Browse free open source Java Libraries and projects below. Use the toggles on the left to filter open source Java Libraries by OS, license, language, programming language, and project status.

  • $300 Free Credits for Your Google Cloud Projects Icon
    $300 Free Credits for Your Google Cloud Projects

    Start building on Google Cloud with $300 in free credits. No commitment, no credit card required until you're ready to scale.

    Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
    Start Free Trial
  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • 1
    JTS Topology Suite

    JTS Topology Suite

    Java library for creating and manipulating vector geometry.

    The JTS Topology Suite is a Java library for creating and manipulating vector geometry. It also provides a comprehensive set of geometry test cases, and the TestBuilder GUI application for working with and visualizing geometry and JTS functions.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 2
    Ollama4j

    Ollama4j

    A simple Java library for interacting with Ollama server

    Ollama4j is a lightweight Java library designed to simplify interaction with the Ollama server, enabling developers to integrate locally hosted large language models into Java applications with minimal friction. It provides a clean and developer-friendly API that abstracts the underlying REST communication, allowing users to focus on building features rather than handling low-level networking details. The library supports a wide range of core capabilities, including chat-based interactions, text generation, embeddings, and model management, making it suitable for both simple applications and more advanced AI-driven systems. It integrates seamlessly into Java ecosystems through Maven or Gradle dependencies, and it works with standard Java environments starting from JDK 11 and above. Ollama4j also includes support for advanced features such as tool or function calling, enabling models to interact with external systems and execute more complex workflows.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 3
    OpenGL Canvas

    OpenGL Canvas

    An Android library that provides views using openGL canvas

    android-openGL-canvas is a lightweight OpenGL rendering library for Android that emulates the Android Canvas API using OpenGL ES 2.0. It’s designed for developers who want to achieve hardware-accelerated 2D graphics on Android while maintaining the familiar Canvas drawing commands. Ideal for real-time graphics, games, or custom views, this project provides a fast and flexible alternative to Android’s software rendering without the need for a full game engine. It bridges the gap between low-level graphics APIs and high-level UI rendering.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 4
    PlaceHolderView

    PlaceHolderView

    This library provides advance views for lists and stacks

    PlaceHolderView is an Android library for building advanced lists, expandable collections, infinite feeds, and swipeable card stacks. Some components extend RecyclerView, while others use independent implementations tailored to gesture-driven interfaces. Its annotation-based API reduces adapter and binding boilerplate by generating binding classes during compilation. PlaceHolderView offers a standard list container, an infinite-scrolling variant, and a parent-child expandable view. SwipePlaceHolderView supports Tinder-style card stacks, while SwipeDirectionalView reports swipe directions and touch events. The library includes Java and Kotlin integration paths, although its dependencies and support-library examples reflect an older Android ecosystem.
    Downloads: 7 This Week
    Last Update:
    See Project
  • Go from Code to Production URL in Seconds Icon
    Go from Code to Production URL in Seconds

    Cloud Run deploys apps in any language instantly. Scales to zero. Pay only when code runs.

    Skip the Kubernetes configs. Cloud Run handles HTTPS, scaling, and infrastructure automatically. Two million requests free per month.
    Try it free
  • 5
    RSocket

    RSocket

    Java implementation of RSocket

    Application protocol providing Reactive Streams semantics. RSocket provides a protocol for Reactive Streams semantics between client-server, and server-server communication. RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron. RSocket is intended to be consumed via one of the various implementation libraries which implement the RSocket Protocol. By default to make RSocket easier to use it copies the incoming Payload. Copying the payload comes at cost to performance and latency. If you want to use zero copy you must disable this. To disable copying you must include a payloadDecoder argument in your RSocketFactory. This will let you manage the Payload without copying the data from the underlying transport. You must free the Payload when you are done with them or you will get a memory leak. Used correctly this will reduce latency and increase performance.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 6
    RoaringBitmap

    RoaringBitmap

    A better compressed bitset in Java

    Bitsets, also called bitmaps, are commonly used as fast data structures. Unfortunately, they can use too much memory. To compensate, we often use compressed bitmaps. Roaring bitmaps are compressed bitmaps which tend to outperform conventional compressed bitmaps such as WAH, EWAH or Concise. In some instances, roaring bitmaps can be hundreds of times faster and they often offer significantly better compression. They can even be faster than uncompressed bitmaps.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 7
    Spring Integration

    Spring Integration

    Provides an extension of the Spring programming model

    Extends the Spring programming model to support the well-known Enterprise Integration Patterns. Spring Integration enables lightweight messaging within Spring-based applications and supports integration with external systems via declarative adapters. Those adapters provide a higher-level of abstraction over Spring’s support for remoting, messaging, and scheduling. Spring Integration’s primary goal is to provide a simple model for building enterprise integration solutions while maintaining the separation of concerns that is essential for producing maintainable, testable code.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 8

    Tinker

    Android hot-fix solution library

    Tinker is a hot-fix solution library for Android, and the official one for WeChat. It supports dex, So library, and resources, allowing application updates without needing reinstallation. Tinker consists mainly of 3 parts: a gradle compile plugin, a core SDK library, and a command-line version of non-gradle compiled users. There are many other hot-fix solutions just like Tinker, but Tinker overcomes many of the problems that other solutions have. For starters, Tinker offers class, So and resource replacement, something that most other solutions do not. It offers full platform support and gradle support, while being smaller and simpler.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 9
    jCasbin

    jCasbin

    An authorization library that supports access control models

    An authorization library that supports access control models like ACL, RBAC, ABAC for Golang, Java, C/C++, Node.js, Javascript, PHP, Laravel, Python, .NET (C#), Delphi, Rust, Ruby, Swift (Objective-C), Lua (OpenResty), Dart (Flutter) and Elixir. In Casbin, an access control model is abstracted into a CONF file based on the PERM metamodel (Policy, Effect, Request, Matchers). So switching or upgrading the authorization mechanism for a project is just as simple as modifying a configuration. Besides memory and file, Casbin policy can be stored into lots of places. Currently, dozens of databases are supported, from MySQL, Postgres, Oracle to MongoDB, Redis, Cassandra, AWS S3. jCasbin is a powerful and efficient open-source access control library for Java projects. It provides support for enforcing authorization based on various access control models.
    Downloads: 7 This Week
    Last Update:
    See Project
  • Secure File Transfer for Windows with Cerberus by Redwood Icon
    Secure File Transfer for Windows with Cerberus by Redwood

    Protect and share files over FTP/S, SFTP, HTTPS and SCP with the #1 rated Windows file transfer server.

    Cerberus supports unlimited users and connections on a single IP, with built-in encryption, 2FA, and a browser-based web client — all deployable in under 15 minutes with a 25-day free trial.
    Try for Free
  • 10
    libsu

    libsu

    A complete solution for apps using root permissions

    libsu is a modern Android library that provides a safe, convenient API for executing commands with root privileges and interacting with the Android shell. Instead of ad-hoc Runtime.exec calls, it offers structured sessions, proper I/O streams, and lifecycle handling that works reliably across devices. The library focuses on developer ergonomics: thread-safe helpers, Kotlin-friendly APIs, and utilities for file operations, process management, and parcelable data transfer. It’s designed to interoperate smoothly with Magisk-based root environments while degrading gracefully on non-rooted devices when possible. Attention is given to security and correctness—avoiding resource leaks, handling timeouts, and containing elevated operations to explicit scopes. For apps that legitimately need privileged automation or maintenance tasks, libsu becomes the backbone that keeps the “root” parts predictable and testable.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 11
    Alpakka Kafka

    Alpakka Kafka

    Alpakka is a Reactive Enterprise Integration library for Java

    The Alpakka project is an open source initiative to implement stream-aware and reactive integration pipelines for Java and Scala. It is built on top of Akka Streams and has been designed from the ground up to understand streaming natively and provide a DSL for reactive and stream-oriented programming, with built-in support for backpressure. Akka Streams is a Reactive Stream and JDK 9+ java.util.concurrent.Flow-compliant implementation and therefore fully interoperable with other implementations. As Kafka’s client protocol negotiates the version to use with the Kafka broker, you may use a Kafka client version that is different than the Kafka broker’s version.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 12
    Booklore

    Booklore

    Digital library with smart shelves

    Booklore is a comprehensive self-hosted digital library platform that helps readers organize, manage, track, and even read their personal collections of books and comics from a centralized web interface. It provides powerful metadata management that automatically fetches rich details like titles, authors, covers, and publication info so your library looks organized and beautiful without manual data entry. Users can create smart shelves with custom filters, build dynamic collections that update automatically, and search through thousands of entries instantly, turning chaotic folders of files into a curated reading experience. Booklore supports multi-user access with granular permission controls, making it suitable for families, book clubs, or shared collections, and its built-in reader can display PDFs, EPUBs, and comic formats directly in a browser.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 13
    Google Maps SDK for Android Samples

    Google Maps SDK for Android Samples

    Samples demonstrating how to use Maps SDK for Android

    Create dynamic, interactive and personalized experiences with maps, locations and geospatial experiences for your Android apps. Create an account, generate an API key, and start creating. Learn how to load the Maps SDK for Android and add a map with a bookmark to your web application. You can customize almost all aspects of the map, such as routes, landforms and places of interest, among others. Find the current location of an Android device and display details of the place or other place of interest in that location. Add bookmarks to a map, interact with click events, customize color and image, and more. Displays an information window with additional data and context when users press a bookmark. Customize user interaction by configuring integrated UI components and gestures. Listen to events on the map, including clicks on maps, clicks on markers, camera changes, and overlay events, among others.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 14
    Hutool

    Hutool

    A set of tools that keep Java sweet

    Hutool is a small but comprehensive Java tool class library. Through static method encapsulation, it reduces the learning cost of related APIs, improves work efficiency, makes Java as elegant as a functional language, and makes the Java language "sweet". The tools and methods in Hutool come from each user's meticulous attention to detail. It covers all aspects of the underlying code of Java development. It is not only a sharp tool to solve small problems in large-scale project development, but also an efficiency responsibility in small-scale projects. Hutool is a friendly replacement for the "util" package in the project. It saves developers the time of encapsulating public classes and public tool methods in the project, allowing developers to focus on business while avoiding bugs caused by imperfect encapsulation to the greatest extent.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 15
    Logbook

    Logbook

    An extensible Java library for HTTP request and response logging

    Logbook is an extensible Java library to enable complete request and response logging for different client- and server-side technologies. It satisfies a special need by a) allowing web application developers to log any HTTP traffic that an application receives or sends b) in a way that makes it easy to persist and analyze it later. This can be useful for traditional log analysis, meeting audit requirements or investigating individual historic traffic issues. Logbook is ready to use out of the box for most common setups. Even for uncommon applications and technologies, it should be simple to implement the necessary interfaces to connect a library/framework/etc. to it.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 16
    OpenGrok

    OpenGrok

    Fast and usable source code search and cross reference engine

    OpenGrok is a fast and usable source code search and cross reference engine. It helps you search, cross-reference and navigate your source tree. It understands various program file formats and history from many Source Code Management systems. In other words it lets you grok (profoundly understand) source code and is developed in the open, hence the name OpenGrok. It is written in Java.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 17
    TableView for Android

    TableView for Android

    Powerful Android library for displaying complex data structures

    TableView is a powerful Android library for displaying complex data structures and rendering tabular data composed of rows, columns and cells. TableView relies on a separate model object to hold and represent the data it displays. This repository also contains a sample app that is designed to show you how to create your own TableView in your application.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 18
    rtmp-rtsp-stream-client-java

    rtmp-rtsp-stream-client-java

    Library to stream in rtmp and rtsp for Android. All code in Java

    Library for streaming in RTMP and RTSP. All code in Java.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 19
    AtlantaFX

    AtlantaFX

    Modern JavaFX CSS theme collection with additional controls

    Modern JavaFX CSS theme collection with additional controls.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 20
    BIMserver

    BIMserver

    The open source BIMserver platform

    The Building Information Model server (short: BIMserver) enables you to store and manage the information of a construction (or other building related) project. Data is stored in the open data standard IFC. The BIMserver is not a fileserver, but it uses a model-driven architecture approach. This means that IFC data is stored as objects. You could see BIMserver as an IFC database, with special extra features like model checking, versioning, project structures, merging, etc. The main advantage of this approach is the ability to query, merge and filter the BIM model and generate IFC output (i.e. files) on the fly. Thanks to its multi-user support, multiple people can work on their own part of the dataset, while the complete dataset is updated on the fly. Other users can get notifications when the model (or a part of it) is updated.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 21
    Chronicle Queue

    Chronicle Queue

    Micro second messaging that stores everything to disk

    Micro second messaging that stores everything to disk. With millions of users worldwide, Chronicle Queue is a leading choice for organizations of all sizes seeking a low-latency, high-performance messaging framework. The Chronicle Queue Enterprise version eliminates compatibility issues and allows for the seamless integration and sharing of data between Java, Rust, Python, and C++ libraries. Chronicle Queue is available as a fully native Java, Rust or C++ library, and also supports a Python API. All versions are fully binary compatible.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 22
    Elide

    Elide

    Elide is a Java library that lets you stand up a GraphQL/JSON-API

    Model-driven {json:api} & GraphQL web services for CRUD and Analytics. Elide is a Java library that enables you to stand up JSON API or GraphQL web services in 4 simple steps. Define a JPA annotated model including relationships to other models using Java, Kotlin, Groovy, and other JVM languages. Control access to fields and entities through a declarative, intuitive permission syntax. Make instances of your new model accessible through a top level collection or restrict access only through relationships to other models. And thats it, you are ready to deploy and query your data with JSON or GraphQL requests. Quickly build and deploy production-quality web services that expose your data as a service. Elide APIs support complex filtering rules, sorting, pagination, subscriptions, and text search. Controlling access to your data is as simple as defining your rules and annotating your models.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 23
    Fresco

    Fresco

    An Android library for managing images and the memory they use

    Fresco’s image pipeline will load images from the network, local storage, or local resources. To save data and CPU, it has three levels of cache; two in memory and another in internal storage. Fresco’s Drawee shows a placeholder for you until the image has loaded and then automatically shows the image when it arrives. When the image goes off-screen, it automatically releases its memory. A decompressed image - an Android Bitmap - takes up a lot of memory. This leads to more frequent runs of the Java garbage collector. This slows apps down. The problem is especially bad without the improvements to the garbage collector made in Android 5.0. On Android 4.x and lower, Fresco puts images in a special region of Android memory. It also makes sure that images are automatically released from memory when they’re no longer shown on screen. This lets your application run faster - and suffer fewer crashes.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 24
    Hyperion Android

    Hyperion Android

    App Debugging & Inspection Tool for Android

    Hyperion is a hidden plugin drawer that can easily be integrated into any app. The drawer sits discreetly under the app so that it is there when you need it and out of the way when you don't. Hyperion plugins are designed to make inspection of your app quick and simple. Be one of the first to create a third-party plugin. The plugin creation guide is a work in progress, but if you are feeling ambitious you can reference the plugins we have already created. To create your own plugin, implement the Plugin interface and expose the implementation as a service. The plugins made available in this repository leverage Google's AutoService annotation processor to generate the service metadata and simplify the process.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 25
    Item-NBT-API

    Item-NBT-API

    Add custom NBT tags to Items/Tiles/Entities without NMS

    The NBT API allows you to add custom NBT tags to Itemstacks, TileEntities, and Entities, or modify existing ones. It completely uses reflections to interact with NMS code and works with all the latest versions. On server start the plugin checks all reflections.
    Downloads: 5 This Week
    Last Update:
    See Project