Awesome
Juka - Programming Language
Official Website: https://jukalang.com
Welcome to the official repository of Juka, a portable, easy-to-use, and universal programming language that can run on any platform. Our philosophy is "code once, run everywhere."
🌐 Quick Links
- Official Website: jukalang.com
- Main Git Repository: github.com/jukaLang/juka
- Mirror Git Repository: codeberg.org/JukaLang/Juka
📣 Follow Us On
🤝 Support Us
We accept donations via Bitcoin, Ethereum, and Patreon:
-
Bitcoin Address: 3MqJ2pwcuqh2W5mUPZUcKMVzxgTKcjD8ET
-
Ethereum (Ethereum Network) Address: 0xB56F6aff7a84935E5AF9D93b6d7db0e4F4F26B39
-
Patreon: patreon.com/JukaLang
💭 About Juka
Juka is a general-purpose language designed to be used in a wide variety of tasks. It's cloud-native, has native support for Jupyter Notebooks, can be run in a web browser, and comes with an easy-to-use package manager. Juka is a community-driven project with a growing community of users and developers.
💻 Supported Systems
Current Supported Device:
- Windows (x86/x64)
- Windows ARM (ARM64)
- Linux (x86/x64) (CentOS, Debian, Fedora, Ubuntu, TinyCore, and almost any other type of Linux)
- Linux ARM (ARM64 and ARM32) (Linux Distributions that run ARM e.g. Raspberry Pi Model 2+)
- MacOS (macOS 10.12+)
- FreeBSD/UNIX (FreeBSD 11+)
- Azure (Microsoft Azure Function)
- HTTPS/API (JukaAPI server)
- Docker (JukaAPI)
- Unity Game Engine (via NuGet.org)
- Web Assembly (CDN/Browser/HTML server/AndroidTV)
- ChromeOS* (see Web Assembly)
- Jupyter via juka-kernel
- Virtual Box Image (JukaVM)
- Windows App (Windows 10+)
- Android App (Can be sideloaded https://jukalang.com/download, but not in PlayStore yet)
- Discord Bot (Working, but is not currently hosted)
- Telegram Bot (Working, but is not currently hosted)
- Amazon Fire (HD) (Can be sideloaded https://jukalang.com/download, but not in Amazon AppStore yet)
Coming Soon:
- Ethereum Network
- Android App (Google Play version)
- iOS App (iPhone/iPad AppStore version)
- Tizen (Samsung)
- MacOS App (AppStore version)
- TempleOS
Send us a message or Tweet at us to let us know what other systems you want to see!
Potential Future Support:
- AndroidTV App (Google Play version)
- Amazon Web Service (Native Support)
- Google Cloud (Native Support)
- Arduino
📜 To Do
- Print/PrintLine
- Variable Declaration
- Basic Operations
- Functions
- Classes
- Loops
- While Statement
- For Statement
- Native Functions
- GetAvailableMemory
- SystemClock
- csharp() command (execute C# code)
- Tail Recursion
- Array
- Dynamic List
- Get (for importing files)
- Try and Catch
📚 Documentation
You can find our dynamic documentation at jukalang.com/docs https://jukalang.com/docs. We also provide a PDF version of our documentation which can be downloaded at https://github.com/jukaLang/juka-website/releases/download/JukaLang/jukadocs.pdf
📦 Downloading Juka
Please download the latest version of Juka from our official website: https://jukalang.com/download
If you are an advanced user and want to download other versions of Juka, visit our releases page https://github.com/jukaLang/juka/releases
⌛ Running Juka
Juka can be run in various ways depending on your system. Detailed instructions can be found in our documentation.
Microsoft/Linux/MacOS/FreeBSD
On some systems you can just double click Juka and it will launch an interactive terminal (REPL).
If that doesn't work, open a Terminal/Power Shell/Command Prompt and navigate to the location of where Juka is located.
Once you are inside the directory, run the following command to start Juka in REPL mode:
./juka
If you have a file with Juka code, you can run it with the following command (substitute HelloWorld.juk with your filename):
./juka HelloWorld.juk
Juka API
Juka comes with an API
Download JukaAPI at https://jukalang.com/download
We are using JukaApi for visitors to test their code online: https://jukalang.com/tryonline
Special thanks to mogenius for hosting our API: https://api.jukalang.com
If you would like to help improve the api, feel free to deploy a container at:
Microsoft Azure Function
Upload the package to Azure Web Server Use web deploy to publish Juka (Azure Function) to the cloud.
Including in C# Project
Once you install Juka via NuGet: Install-Package JukaCompiler
You can pass your code as a string to Juka:
new JukaCompiler.Compiler().JukaCompile(codeAsString, (isFile: false));
If you want to pass a filename instead of a string, you can run the following command
new JukaCompiler.Compiler().JukaCompile(fileName, (isFile: true));
We welcome any contribution! Thank you so much for checking out Juka!