Home

Awesome

The Ballerina Library

Welcome to the Ballerina Library, a robust collection of libraries designed to empower developers with all the necessary tools for building networked applications. With its "Batteries included" approach, it offers a refined set of building blocks and APIs for quick and dependable application development. Key libraries include HTTP, GraphQL, WebSocket, and gRPC, among others, which are comprehensively listed in the Status Dashboard section.

Every package within the Ballerina Library is readily accessible on Ballerina Central. Updates, encompassing enhancements and bug fixes, are made instantly available to users, ensuring a seamless development experience without having to wait for the broader Ballerina language releases.

Repository Organization

This repository serves as the central hub for the Ballerina Library, facilitating discussions, bug reports, feature requests, and an overview of project boards.

For continuous delivery, each library package is maintained in its own repository. To explore the codebase, please visit the respective repository.

The governance, security, release cadence, backward compatibility, and overall maintenance of both parent and child repositories are the responsibility of the dedicated Ballerina Library team.

Contributing to Ballerina

Ballerina thrives on its open-source community. If you're interested in contributing, our contribution guidelines will help you get started.

Take a look at our issue tracker for opportunities to contribute that align with your interests. We eagerly anticipate your contributions.

Code of Conduct

All contributors are encouraged to read the Ballerina Code of Conduct.

License

Ballerina code is distributed under Apache license 2.0.

Useful links

Status Dashboard

Ballerina Modules

These modules are published under the ballerina organization and packed with the Ballerina distribution.

LevelNameLatest VersionBuildSecurity CheckCode CoverageBugsOpen PRsLoad Test ResultsGraalVM Check
1ioLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
java.arraysLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
math.vectorLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
timeLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
urlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
xmldataLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
2avroLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
constraintLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
cryptoLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
logLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
osLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
persistLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
protobufLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
randomLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
taskLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
xsltLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
3cacheLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
data.xmldataLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
data.yamlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
fileLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
ftpLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
ldapLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
mimeLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
tcpLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
udpLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
uuidLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
4authLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
data.csvLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
data.jsondataLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
ediLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
emailLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
jwtLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
mqttLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
oauth2Latest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
tomlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
yamlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
5httpLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
6grpcLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
soapLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
transactionLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
websocketLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
websubLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
websubhubLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
7graphqlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
sqlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check

Ballerina Extended Modules

These modules are protocol modules that are not packed with the Ballerina distribution.

NameLatest VersionBuildSecurity CheckCode CoverageBugsOpen PRsLoad Test ResultsGraalVM Check
copybookLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
persist.googlesheetsLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
persist.inmemoryLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
persist.redisLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
persist.sqlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
wso2.controlplaneLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check

Ballerina Handwritten Connector Modules

These are the handwritten Ballerina connector modules that are used to connect to third-party services. They are published under the ballerinax organization

NameLatest VersionBuildSecurity CheckCode CoverageBugsOpen PRsLoad Test ResultsGraalVM Check
aws.dynamodbLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
aws.dynamodbstreamsLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
aws.marketplace.mpeLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
aws.marketplace.mpmLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
aws.redshiftLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
aws.snsLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
azure-service-busLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
confluent.cavroserdesLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
confluent.cregistryLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
ibm.ibmmqLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AN/A
java.jdbcLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
java.jmsLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
kafkaLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
mongodbLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
mssqlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
mysqlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
natsLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
oracledbLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
postgresqlLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
rabbitmqLatest ReleaseBuildTrivyCodeCovBugsPull RequestsLoad TestsGraalVM Check
redisLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
salesforceLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
sapLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AGraalVM Check
snowflakeLatest ReleaseBuildTrivyCodeCovBugsPull RequestsN/AN/A

Ballerina Generated Connector Modules

These are the generated Ballerina connector modules that are used to connect to third-party services. They are published under the ballerinax organization. The modules are generated using the Ballerina OpenAPI tool using the third-party service's OpenAPI definition. Since these are auto-generated, they only contain a smoke test suite rather than a comprehensive test suite. Due to this nature, the code coverage and load test results are not applicable for these modules. Some repositories such as sap.s4hana.sales contain multiple connectors which are highly co-related. These have multiple releases and thus not indicated here.

NameLatest VersionBuildSecurity CheckBugsOpen PRsGraalVM Check
asanaLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
candidLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
dayforceLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
discordLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
docusign.dsadminLatest ReleaseBuildTrivyBugsPull RequestsN/A
docusign.dsclickLatest ReleaseBuildTrivyBugsPull RequestsN/A
docusign.dsesignLatest ReleaseBuildTrivyBugsPull RequestsN/A
githubLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
googleapis.calendarLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
googleapis.gmailLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
guidewire.insnowLatest ReleaseBuildTrivyBugsPull RequestsN/A
openai.assistantsN/ABuildTrivyBugsPull RequestsGraalVM Check
openai.audioLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
openai.chatLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
openai.finetunesLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
openai.imagesLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
sap.s4hana.salesN/ABuildTrivyBugsPull RequestsGraalVM Check
slackLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
stripeLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
twilioLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
twitterLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check
zendeskLatest ReleaseBuildTrivyBugsPull RequestsGraalVM Check

Ballerina Driver Modules

These Ballerina modules bundle database drivers, making it easier to use Ballerina database connectors. They are published under the ballerinax organization. Only daily build, latest release, and security checks are applicable to these modules.

NameLatest VersionBuildSecurity Check
activemq.driverLatest ReleaseBuildTrivy
aws.redshift.driverLatest ReleaseBuildTrivy
h2.driverLatest ReleaseBuildTrivy
mssql.driverLatest ReleaseBuildTrivy
mysql.driverLatest ReleaseBuildTrivy
oracledb.driverLatest ReleaseBuildTrivy
postgresql.driverLatest ReleaseBuildTrivy
snowflake.driverLatest ReleaseN/ATrivy

Ballerina Tools

These are the Ballerina CLI tools maintained by the Ballerina Library team.

NameLatest VersionBuildSecurity CheckCode CoverageBugsOpen PRs
asyncapi-toolsLatest ReleaseBuildTrivyCodeCovBugsPull Requests
copybook-toolsLatest ReleaseBuildN/ACodeCovBugsPull Requests
edi-toolsLatest ReleaseBuildN/ACodeCovBugsPull Requests
graphql-toolsLatest ReleaseBuildN/ACodeCovBugsPull Requests
openapi-toolsLatest ReleaseBuildN/ACodeCovBugsPull Requests
persist-toolsLatest ReleaseBuildN/ACodeCovBugsPull Requests
protoc-toolsLatest ReleaseBuildN/ACodeCovBugsPull Requests