Modules

auth

This module provides default authentication provider configurations that can be extended to create new authentication providers.

cache

This module offers a cache that supports time-based eviction, and size-based eviction.

config

This module provides the Config API to read configurations from environment variables, TOML files, and command-line parameters and build a consolidated set of configurations.

crypto

This module provides the necessary utilities that are required to hash content using different hashing mechanisms and algorithms.

docker

This module offers an annotation based docker extension implementation for ballerina.

encoding

This module provides the necessary utilities that are required to encode and decode content using different encoding mechanisms and algorithms.

file

This module contains functions to perform file system based operations such as create, delete, rename the file/directory and retrieve metadata of the file.

filepath

This module provides the utility functions for manipulating the file path in a way that is compatible with the target operating system.

grpc

This module contains functions to support gRPC protocol based communication. gRPC is a framework developed by Google to support the RPC (Remote Procedure Call) protocol. The gRPC protocol is layered over HTTP/2. This protocol only supports client-initiated communication.

http

This module provides an implementation for connecting and interacting with HTTP, HTTP2, and WebSocket endpoints. The module facilitates two types of endpoints as ‘Client’ and ‘Listener’.

io

This module is designed to support input and output operations via channels in a canonical way, either in a blocking, or non-blocking manner.

istio

This module offers an annotation based Istio extension implementation for ballerina.

java

This module provides the API for Java interoperability in Ballerina. It includes a set of Ballerina annotations with which Java constructors, methods and fields can provide implementations to Ballerina functions with external function bodies.

java.arrays

This module provides APIs to create new Java array instances, get elements from arrays, set elements, etc.

java.jdbc

This module provides the functionality required to access and manipulate data stored in any type of relational database that is accessible via Java Database Connectivity (JDBC).

jsonutils

This module provides utility functions to manipulate built-in json data type. It provides APIs to convert an xml to a json, or convert a table to a json.

jwt

This module provides a inbound and outbound JWT authentication provider, which can be used to authenticate using a JWT and the functionality related to issuing and validating JWT.

kafka

This module is used to interact with Kafka Brokers via Kafka Consumer and Kafka Producer clients. This module supports kafka 1.x.x and 2.0.0 versions.

kubernetes

This module offers an annotation based Kubernetes extension implementation for ballerina.

lang.array

This module provides lang library list operations defined by the language specification 2019R3.

lang.decimal

This module provides lang library operations on decimal values defined by the language specification 2019R3.

lang.error

This module provides lang library operations on error values defined by the language specification 2019R3.

lang.float

This module provides lang library operations on float values defined by the language specification 2019R3.

lang.future

This module provides lang library operations on future values defined by the language specification 2019R3.

lang.int

This module provides lang library operations on int values defined by the language specification 2019R3.

lang.map

This module provides lang library map operations defined by the language specification 2019R3.

lang.object

This module defines the shape expected from all listeners as defined by the language specification 2019R3.

lang.stream

This module provides lang library operations on stream values defined by the language specification 2019R3.

lang.string

This module provides lang library string operations defined by the language specification 2019R3.

lang.table

This module provides lang library operations on table values defined by the language specification 2019R3.

lang.typedesc

This module provides lang library operations on typedesc values defined by the language specification 2019R3.

lang.value

This module provides lang library operations common to all values defined by the language specification 2019R3.

lang.xml

This module provides lang library operations on xml values defined by the language specification 2019R3.

log

This module provides a basic API for logging.

math

This module provides functions to perform fixed-precision integer arithmetic and fixed-precision decimal arithmetic. It includes functions to get the absolute, cosine, sine, root, tangent, and more for a given value.

mime

This module provides functions to encapsulate multiple body parts, such as attachments in a single message. The communication of such messages follow the MIME (Multipurpose Internet Mail Extensions) specification as specified in the RFC 2045 standard.

nats

This module provides the capability to connect with NATS and NATS Streaming servers and performs the following functionality.

oauth2

This module provides an inbound and outbound OAuth2 authentication provider, which can be used to authenticate the provided credentials against an introspection endpoint and authenticate with an external endpoint.

observe

This module provides apis for observing Ballerina services. Ballerina supports Observability out of the box. This module provides user api's to make Ballerina Observability more flexible for the user.

openapi

This module provides the following code generation capabilities.

openshift

This module offers an annotation based OpenShift extension implementation for ballerina.

reflect

This module provides utility methods for obtaining reflective information about the Ballerina runtime.

runtime

This module provides functions to interact with the runtime, the invocation context and to manage errors.

socket

This module provides an implementation for connecting to a remote socket server or acts as a server for an incoming socket request. The module facilitates two types of endpoints called Client and Listener.

streams

The Streams module provides the stream processing capabilities to Ballerina:

stringutils

This module provides utility functions to manipulate built-in string data type.

system

This module provides functions to retrieve information about the system and the current users of the system.

task

This module provides the functionality to configure and manage Task Listeners and Task Schedulers. Task Listeners and Task Schedulers can be used to perform tasks periodically.

test

This module allow developers to write testable code.

time

This module provides implementations related to time, date, time zones, and durations.

transactions

This module provides Ballerina transaction manager implementation.

xmlutils

This module provides utility functions to manipulate built-in xml data type. It provides APIs to convert a json to an xml, or convert a table to an xml.

xslt

This module provides a function to transform the XML content to another XML/HTML/plain text using XSL transformations.