AZProductions / Kookaburra

Cross-Platform, Object-Oriented Programming language. With Kookaburra you can choose between the powerful CLI, or start coding with its' intuitive syntax.
https://azsoftware.org/Kookaburra
MIT License
11 stars 0 forks source link
cli console console-application cross-platform csharp dotnet-core dotnet5 dotnet6 language linux oriented-programming-language programming-language terminal windows

Logo Kookaburra

Cross-platform, Object-oriented Programming language.

Latest release GitHub all releases .NET Tests CodeQL CodeFactor 37k lines of code MS-Store reviews Docs Kookaburra.SDK Downloads

MS-Store link badge Github link badge Mirror link badge


πŸ“š Description

Kookaburra is a simple programming language. With Kookaburra you can choose between the powerful CLI (Command Line Interface), or start coding with its' intuitive syntax. The syntax is simple and efficient. Create apps/games and more that are fine-tuned to perfection. Kookaburra is completely free to use, using only local files and no data/telemetry collection. Our aim is to power creativity and inspire young developers. That's why we care about privacy and safety. We love hearing feedback to improve Kookaburra. Read what's next in Kookaburra.

Remember, KookaburraShell is still in Beta. Features may vary in the final release.

πŸ“£ Announcements

The decline of development - Blog

Kookaburra 0.9.X Presentation - PDF

Publishing Kookaburra into an exe file - Blog

Check out the New Kookaburra.SDK! - Link

Kookaburra is on the Windows Store! - Link


πŸ’‘ Features

πŸ™‹ FAQ

What is Kookaburra?
**Kookaburra** is a simple programming language. With Kookaburra you can choose between the powerful **CLI**, or start **coding** with its' intuitive syntax. The syntax is simple and efficient. Kookaburra is completely **free** to use, using only local files and no data/telemetry collection.
Which operating systems does Kookaburra support?
OS | Version | Architectures | --------------------------------------|-------------------------|-----------------| Windows 7 | 7 SP1(**\***), 8.1 | x64, x86 | Windows 10 | Version 1607+ | x64, x86, Arm64 | Windows Server | 2012+ | x64, x86 | Alpine Linux | 3.11+ | x64, Arm64 | CentOS | 7+ | x64 | Debian | 9+ | x64, Arm32, Arm64 | Fedora | 33+ | x64 | Linux Mint | 18+ | x64 | openSUSE | 15+ | x64 | Red Hat Enterprise Linux | 7+ | x64 | SUSE Enterprise Linux (SLES) | 12 SP2+ | x64 | Ubuntu | 21.04, 20.04, 18.04, 16.04 | x64, Arm32, Arm64 |
Why would you download Kookaburra?
Kookaburra is a simple programming language, designed for beginners but with sufficient complexity for more advanced coders. Kookaburra can be run on multiple platforms all using the same structure and syntax, thereby requiring a only single learning curve. It's completely free and open-source. It leaves no footprint with all data stored in a single directory. It simply creates a folder in the **AppData Roaming** folder. You can have a look in the folder by pressing win + R and typing **'%appdata%/kookaburra'**. Press *enter*, file explorer will appear with the open folder.
Does Kookaburra need internet acces?
**No**, most featrues work offline. Features like download and update are only accessing the internet when the user specifies the command.
Will Kookaburra ever support Mac-OS?
We currently see no demand in Mac-OS, unless it's worth the time in testing Kookaburra. You can always make your own build of Kookaburra that supports Mac-OS. Some features need modifications to work.
Does Kookaburra support custom commands?
**Yes**, it does. Open the Kookaburra config directory, and edit the ```custom_commands.txt``` file. Kookaburra is made in a dynamic workflow, any improvements and suggestions greatfully received. You can add a new line with ```paint=mspaint```. When typing the command **paint**, it will open *Microsoft Paint*. [Read more..](https://github.com/AZProductions/Kookaburra/blob/main/resources/The%20complete%20guide%20of%20Kookaburra.md)
Which 3rd party terminals does Kookaburra support?
[![Windows Terminal - Stable](https://img.shields.io/badge/Windows_Terminal-Stable-blue?logo=windowsterminal)](https://github.com/microsoft/terminal) ![Bash Terminal - Stable](https://img.shields.io/badge/Bash_Terminal-Stable-blue?logo=gnubash) ![Hyper - Stable](https://img.shields.io/badge/Hyper-Stable-blue?logo=Hyper)

πŸ’Ώ Installation

For Windows:

Youtube Tutorial


For Linux

Use this command to download it with wget

wget  https://github.com/AZProductions/Kookaburra/releases/download/0.8.5/KookaburraShell_linux_0.8.5

Or by using curl

curl https://github.com/AZProductions/Kookaburra/releases/download/0.8.5/KookaburraShell_linux_0.8.5

Provide Kookaburra permissions by typing

chmod 777 ./KookaburraShell_linux_0.8.5

And run it by typing

./KookaburraShell_linux_0.8.5

Run Kookaburra and open a .kookaburra file with

./KookaburraShell_linux_0.8.5 /filelocation/example.kookaburra

Youtube Tutorial

⏱ Get started

We strongly recommend that you read The complete guide of Kookaburra before starting. In the CLI you can type the command help to list all the possible commands with explanation. You can also watch the full tutorial, but since it is outdated and not supported in the newer versions of Kookaburra we discourage it.

πŸ” Security

When downloading Kookaburra, you can chose between getting it from the Microsoft Store or downloading it via GitHub. On Linux you can download it via GitHub using Curl or Wget. On Windows open your favourite browser and head over to 'https://www.github.com/AZProductions/Kookaburra/releases' or 'https://www.github.com/AZProductions/Kookaburra/releases/latest' to download the latest stable build. Click on the little dropdown icon and download the most suitable version for your computer.

If you don't know which version you should download, newer computers support x64. If you have an older computer or don't know if the computer is x64 based, just pick the x86 version.

Some browsers like Edge will stop you from opening the file. These pop ups are just warnings to tell the user to not download random files off the internet. The official Kookaburra files are safe to use. Feel free to use an antivirus program to check for your own piece of mind. Just select keep and open the file. Windows SmartScreen will pop up, and again, this is a false positive. Click on Read more, and select run. Kookaburra should start up. If you're not so keen with these pop ups, we recommend you to download it in the Microsoft Store. You can also manually build the code using .Net, it takes longer but then you can verify that the binaries haven't been tampered with. Read more..

You can also get the SHA-256 from the file and compare it with the reference in the Releases tab in github. There's an online tool where you can upload the file and get the SHA-256.

πŸ‘©β€πŸ’» Syntax

Available on the website.

πŸ“· Gallery

Kookaburra supports 3rd party terminals like [Windows Terminal](https://github.com/microsoft/terminal). Create files and folders with ease in a matter of seconds. Start scripting with it's intuitive syntax.

πŸ“’ CLI Commands

Command description
cp Copy files from one place to another.
rm Delete files.
rmdir Delete folders.
mkdir Make folders.
mkfile Make files.
cd Change to a directory or file.
cd .. Go back a directory.
ls or dir or directory Displays all the files and folders in the current directory.
clear or cls Clears the console window.
whoami Shows the pc name and username.
drives List all drives in your computer.
browse | Opens file-explorer in the current directory. You can also use explore or explorer.
ipconfig Show all internet settings from your computer.
download Download files from an internet server.
password Generate passwords.
tree Renders a detailed list of all the files and folders in a directory.
winreset Resets the window height and width. (Windows only)
hash | Get's the MD5, SHA256 and SHA1 from the specified file. (hash test.txt)
tos Opens the Terms of Service.
exit Exits the console.
env Gets the Env data and writes it to the screen. (For testing purposes)
restart Restarts the console.
restart -p Restarts the console without doing Package Check.
kbconfig or settings Open the settings file in the default text editor.
drives Displays all active drives with additional info.
explorer or explore or browse or view Opens file explorer in the current directory.
mv Moves the selected directory or file to the specified directory or file.
mv -o Moves the selected directory or file to the specified directory or file overriding it.
ipconfig Shows the current internet drives, chipsets and local ip information.
start Starts the specified file.
sound.play Plays specified .wav file(s).
download Downloads specified file from an internet location.
tip Shows a random tip.
whoami Displays the MachineName + UserName.
edit Opens the specified file in the default text editor. (text_editor.txt)
pwd Prints the working directory.
uname Prints the username.
mname Prints the machinename.
tree or list Displays the current folder/file structure in a detailed tree.

⏩ CLI Shortcuts

Shortcut Description
-c:/, it works with all drives. Automatically gets the root of the set directory.
-env The location of the configuration directory of kookaburra.
-r Goes to the root of the current directory.
-cookies The directory that serves as a common repository for Internet cookies.
-desktop or -dt The logical Desktop rather than the physical file system location.
-favorites The directory that serves as a common repository for the user's favorite items.
-fonts A virtual folder that contains fonts.
-history The directory that serves as a common repository for Internet history items.
-personal The directory that serves as a common repository for documents. This member is equivalent to MyDocuments.
-programs The directory that contains the user's program groups.
-recent The directory that contains the user's most recently used documents.
-resources The file system directory that contains resource data.
-st The directory that contains the Start menu items.
-startup The directory that corresponds to the user's Startup program group. The system starts these programs whenever a user logs on or starts Windows.
-system The System directory.
-templates The directory that serves as a common repository for document templates.
-windows The Windows directory or SYSROOT. This corresponds to the %windir% or %SYSTEMROOT% environment variables.
-c Clears location.
-AdminTools The file system directory that is used to store administrative tools for an individual user. The Microsoft Management Console (MMC) will save customized consoles to this directory, and it will roam with the user.
-ApplicationData The directory that serves as a common repository for application-specific data for the current roaming user. A roaming user works on more than one computer on a network. A roaming user's profile is kept on a server on the network and is loaded onto a system when the user logs on.
-CDBurning The file system directory that acts as a staging area for files waiting to be written to a CD.
-CommonAdminTools The file system directory that contains administrative tools for all users of the computer.
-CommonApplicationData The directory that serves as a common repository for application-specific data that is used by all users.
-CommonDesktopDirectory The file system directory that contains files and folders that appear on the desktop for all users.
-CommonDocuments The file system directory that contains documents that are common to all users.
-CommonMusic The file system directory that serves as a repository for music files common to all users.
-CommonOemLinks This value is recognized in Windows Vista for backward compatibility, but the special folder itself is no longer used.
-CommonPictures The file system directory that serves as a repository for image files common to all users.
-CommonProgramFiles The directory for components that are shared across applications.
-CommonProgramFilesX86 The Program Files folder.
-CommonPrograms A folder for components that are shared across applications.
-CommonStartMenu The file system directory that contains the programs and folders that appear on the Start menu for all users.
-CommonStartup The file system directory that contains the programs that appear in the Startup folder for all users.
-CommonTemplates The file system directory that contains the templates that are available to all users.
-CommonVideos The file system directory that serves as a repository for video files common to all users.
-DesktopDirectory The directory used to physically store file objects on the desktop. Do not confuse this directory with the desktop folder itself, which is a virtual folder.
-InternetCache The directory that serves as a common repository for temporary Internet files.
-LocalApplicationData The directory that serves as a common repository for application-specific data that is used by the current, non-roaming user.
-LocalizedResources The file system directory that contains localized resource data.
-MyComputer The My Computer folder. When passed to the Environment.GetFolderPath method, the MyComputer enumeration member always yields the empty string ("") because no path is defined for the My Computer folder.
-MyDocuments The My Documents folder. This member is equivalent to Personal.
-MyMusic The My Music folder.
-MyPictures The My Pictures folder.
-MyVideos The file system directory that serves as a repository for videos that belong to a user.
-NetworkShortcuts A file system directory that contains the link objects that may exist in the My Network Places virtual folder.
-PrinterShortcuts The file system directory that contains the link objects that can exist in the Printers virtual folder.
-ProgramFiles The program files directory.
-ProgramFilesX86 The x86 Program Files folder.
-SendTo The directory that contains the Send To menu items.
-StartMenu The directory that contains the Start menu items.
-SystemX86 The Windows System folder.
-UserProfile The user's profile folder. Applications should not create files or folders at this level; they should put their data under the locations referred to by ApplicationData.
*Most of the Shortcuts in this list are from the Microsoft docs.

πŸ“ Samples

Copyright and License

This repository is under a proprietary licence.


AZ Software is not responsible for any harm to your device(s).