Thanks to visit codestin.com
Credit goes to github.com

Skip to content

ako-lang/ako

Repository files navigation

logo

NPM Version NPM Download CDN Download Coverage Status Quality Gate Status Security License

AKO Language [WIP]

AKO is a programming language built to be used by no-code or low-code tools

It's a simple scripting language designed to be embedded in application or webApp

[ Documentation | Playground ]


Here is a sample that compute Fibonacci sequence in a recursive (and inefficient) way

// We create a task to compute fibo
task fibo ["val"] {
    if val <= 0 { return 0 }
    elif val == 1 { return 1 }

    prev1 = @fibo(val - 1)
    prev2 = @fibo(val - 2)
    return prev1 + prev2
}

// We can do some math
val = Math.max(12 + 3, 0)

// We call our task and print the result
result = @fibo(val)
@print("Result of Fibo({val}) = {result}")

Problem & Goals

Most No-code or Low-code existing solution have big limitations:

  • Bloaty and complicated
  • closed source, so it can be hard to contribute or add custom logic
  • their own UI that can be really frustrating for more advanced user (like blockly)
  • the code is usually stored in a proprietary text format (JSON, YAML or XML) and is not portable or reusable

Ako tries to fill the gap by providing at the same time:

  • A visual programming interface for beginners
  • A programming language for more advanced users but easy to learn
  • An interpreter designed to run almost anywhere

Getting Started

From NPM

# Install Ako interpreter
npm install -g ako-lang

# Execute
ako ./test.ako

Standalone Executable

You can directly use standalone executable of the interpreter : Release page

It's compiled for Windows, Mac and Linux and once downloaded, you can use it to run Ako scripts

./ako.exe test.ako

CDN

For web usage, you can load the library directly with ESM imports

import * as Ako from 'https://cdn.jsdelivr.net/npm/[email protected]/dist/web/ako-web.js'

How to write Ako scripts ?

For that, please take a look at our Documentation

Ako Development

After cloning this repository

Getting started locally

npm install # install deps
npm run build
npm link # link the local file globally

ako ./samples/ # use the interpreter

Other

npm test # run unit tests
npm run package # create the binaries (after build)