/ballerina-lang

The Ballerina Programming Language

Primary LanguageBallerinaApache License 2.0Apache-2.0

Ballerina daily build Trivy GitHub (pre-)release GitHub (Pre-)Release Date GitHub last commit License codecov Twitter Follow

The Ballerina programming language

Ballerina is a statically typed, open-source cloud-native programming language developed and supported by WSO2.

With Ballerina, you could easily develop microservices, API endpoints and integrations, and any other application for the cloud. Additionally, Ballerina has all the general-purpose functionalities you could expect from a modern programming language.

With Ballerina's compiler-level built-in support for widely used data types such as JSON and XML, your focus on handling structured data, network service interactions, and dealing with concurrency is made much more effective.

Providing and consuming services

It has inherently concurrent first-class language constructs for providing and consuming services.

Sequence diagrams

Sequence diagram based graphical view shows the most fundamental aspect of the semantics of a network distributed application.

Structural typing

It allows for looser coupling between distributed components and eliminates the friction of data binding.

Metadata

Extensible metadata enables easy integration of Ballerina programs with cloud platforms. You could directly generate Docker and Kubernetes artifacts straight away from the source code.

Get started

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

You can use following resources to learn Ballerina.

Download and install

For instructions on downloading and installing, see Ballerina Downloads.

Installation options

For more installation options, see Installation options.

Get the VS Code extension

Try out Ballerina's development capabilities using the Ballerina extension for Visual Studio Code.

Report issues and security flaws

Tip: If you are unsure whether you have found a bug, search the existing issues in the GitHub repo and raise it in the Ballerina Discord or Stack Overflow.

Contribute 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.

We look forward to receiving your contributions.

License

Ballerina code is distributed under Apache license 2.0.

Useful links

  • Join Ballerina-Dev group for technical discussions related to the Ballerina project.
  • Chat live with us on our Discord community.
  • Post technical questions on the Stack Overflow with the #ballerina tag.
  • For more details on how to engage with the community, see Community.