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.
- Language, Tooling, Standard Library, Website: ballerina-lang repo
- Extended library: ballerina-extended-library repo
- Security flaw: send an email to [email protected]. For details, see the security policy.
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.