Ballerina is a compiled, transactional, statically and strongly typed programming language with textual and graphical syntaxes.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github Fix merge conflicts with master branch Mar 2, 2018
.mvn/wrapper Add maven wrapper Mar 6, 2018
benchmarks [maven-release-plugin] prepare for next development iteration Aug 20, 2018
bvm Merge pull request #10120 from SupunS/propagate-file-errors Aug 24, 2018
cli Merge pull request #9991 from MaryamZi/intro-picocli Aug 23, 2018
compiler/ballerina-lang Merge pull request #10140 from pranavan15/test-coverage Aug 24, 2018
composer Merge pull request #9991 from MaryamZi/intro-picocli Aug 23, 2018
distribution/zip Merge pull request #9991 from MaryamZi/intro-picocli Aug 23, 2018
docs Create CLI-commands.md Apr 12, 2018
language-server Merge pull request #10196 from nadeeshaan/dev-branch Aug 27, 2018
misc Merge pull request #9991 from MaryamZi/intro-picocli Aug 23, 2018
stdlib Merge branch 'master' of https://github.com/ballerina-platform/baller… Aug 23, 2018
tests Disable websocket test until we fix them Aug 25, 2018
tool-plugins Merge pull request #10172 from NipunaRanasinghe/idea-latest-test-reso… Aug 24, 2018
.gitignore Resolving conflicts Jul 18, 2018
.gitmodules Resolve merge conflicts Aug 2, 2018
.travis.yml Update Travis config Jun 14, 2018
AUTHORS Fix merge conflicts with master branch Mar 2, 2018
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md Apr 5, 2018
CONTRIBUTING.md Update CONTRIBUTING.md May 15, 2018
COPYRIGHT Fix merge conflicts with master branch Mar 2, 2018
LICENSE Initial commit Mar 8, 2017
PATENTS Update PATENTS Apr 2, 2018
README.md Merge pull request #9743 from ballerina-platform/rasika-patch-1 Aug 3, 2018
appveyor.yml Merge pull request #9373 from Shan1024/add-copyright-notice Jul 4, 2018
mvnw Add maven wrapper Mar 6, 2018
mvnw.cmd Add maven wrapper Mar 6, 2018
pom.xml Merge pull request #10170 from Kishanthan/update-transport Aug 23, 2018

README.md

Ballerina

Jenkins Build Status AppVeyor Build Status GitHub (pre-)release GitHub (Pre-)Release Date GitHub last commit License

Ballerina is a compiled, type safe, concurrent programming language designed to make it simple to write microservices that integrate APIs.

Integration Syntax

A compiled, transactional, statically and strongly typed programming language with textual and graphical syntaxes. Ballerina incorporates fundamental concepts of distributed system integration and offers a type safe, concurrent environment to implement microservices.

Networked Type System

A type system that embraces network payload variability with primitive, object, union, and tuple types.

Concurrency

An execution model composed of lightweight parallel worker units that are non-blocking where no function can lock an executing thread manifesting sequence concurrency.

Table of contents

Getting started

You can use one of the following options to try out Ballerina.

Download and install

Download the binary

You can download the Ballerina distribution at http://ballerina.io.

Install from source

Alternatively, you can install Ballerina from the source using the following instructions.

Prerequisites

Building the source

  1. Clone this repository using the following command.

    git clone --recursive https://github.com/ballerina-platform/ballerina-lang

    If you download the sources, you need to update the git submodules using the following command.

    git submodule update --init 
  2. Run the Maven command mvn clean install from the repository root directory.

  3. Extract the Ballerina distribution created at distribution/zip/ballerina/target/ballerina-<version>-SNAPSHOT.zip.

Contributing to Ballerina

As an open source project, Ballerina welcomes contributions from the community. To start contributing, read these contribution guidelines for information on how you should go about contributing to our project.

Check the issue tracker for open issues that interest you. We look forward to receiving your contributions.

License

Ballerina code is distributed under Apache license 2.0.

Useful links