DEV.co
Open-Source Databases · objectbox

objectbox-java

ObjectBox is a lightweight, on-device NoSQL database for Java and Kotlin applications on Android and JVM, with built-in vector search capabilities. It emphasizes performance, low resource consumption, and ease of use compared to traditional SQL databases like SQLite.

Source: GitHub — github.com/objectbox/objectbox-java
4.6k
GitHub stars
307
Forks
Java
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryobjectbox/objectbox-java
Ownerobjectbox
Primary languageJava
LicenseApache-2.0 — OSI-approved
Stars4.6k
Forks307
Open issues146
Latest releaseV5.4.2 (2026-05-06)
Last updated2026-06-30
Sourcehttps://github.com/objectbox/objectbox-java

What objectbox-java is

ObjectBox provides an object-oriented database layer with annotation-driven entity mapping, CRUD operations via Box API, built-in object relations, and native vector search. It supports JVM 8+ (Linux x64/arm64/armv7, macOS x64/arm64, Windows x64) and Android 5.0+, with Kotlin 1.7+ and Java 8+ language support.

Quickstart

Get the objectbox-java source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/objectbox/objectbox-java.gitcd objectbox-java# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Mobile and Edge AI Applications

On-device vector database ideal for RAG, generative AI, and similarity search on Android and edge JVM deployments without cloud dependency.

High-Performance Local Data Storage

Embedded database for Android apps and JVM services requiring fast CRUD operations with minimal memory and CPU overhead, outperforming SQLite alternatives per README claims.

Object-Relational Data with No SQL

Applications needing intuitive object persistence with automatic relation management, eliminating boilerplate SQL and complex ORM configurations.

Implementation considerations

  • Annotation processing via Gradle plugin (v7.0+) or Maven; requires code generation step during build. Gradle 7.0+ and Android Gradle Plugin 8.1+ for Android projects.
  • Entity classes must be annotated (@Entity, @Id) and typically require default constructors; Kotlin data classes are supported but with annotations overhead.
  • Vector search integration requires schema design for vector field storage and understanding of similarity metrics; exact vector dimension and query API details should be verified in official documentation.
  • JDK 11+ required for Gradle plugin; ensure build environment compatibility before adoption.
  • Platform-specific native binaries required for JVM deployments (Linux, macOS, Windows); ensure target OS and architecture (x64, arm64, armv7) are supported.

When to avoid it — and what to weigh

  • Distributed or Cloud-Native Architecture — ObjectBox is designed for on-device, embedded use cases. Not suitable for horizontal scaling or multi-node distributed systems.
  • Complex Cross-Platform Relational Queries — If your application requires sophisticated SQL joins across multiple database instances or complex analytical queries, consider SQL-based alternatives.
  • Multi-User Server Database — ObjectBox is a local embedded database; it is not designed for concurrent server access or multi-user concurrent write scenarios at scale.
  • Strict Legacy SQL Compatibility Required — If your infrastructure requires standard SQL compliance and direct SQL access, ObjectBox's NoSQL approach and annotation-driven model may require migration effort.

License & commercial use

Apache License 2.0 (Apache-2.0) is a permissive OSI-approved license allowing commercial use, modification, and distribution with proper attribution and liability disclaimer.

Apache 2.0 permits commercial use without license fees or restrictions. However, review the full LICENSE.txt file to confirm no commercial-use carve-outs exist in ObjectBox's specific implementation; the license ID alone grants broad commercial rights.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitGood
Assessment confidenceHigh
Security considerations

ObjectBox is an embedded, client-side database; threat model differs from server databases. Data is stored locally on device/JVM process; review encryption at rest requirements (Unknown if built-in encryption is available; check official docs). No server-side authentication/authorization model. Vulnerability management depends on ObjectBox release cadence and community reporting. Third-party security audits not mentioned in provided data.

Alternatives to consider

SQLite (with Room/Hibernate)

Industry-standard embedded SQL database; mature, widely available. Requires ORM or query builders for type safety. Less optimized for mobile performance per ObjectBox claims, but broader SQL tooling ecosystem.

Realm (Realm Database)

Object-oriented mobile database with similar ease-of-use; supports Android and JVM. Also emphasizes performance, but ObjectBox claims faster CRUD operations and native vector search (Realm support Unknown).

MongoDB Realm (or other cloud sync solutions)

If cloud synchronization and multi-device data sharing are required. ObjectBox is local-only; cloud sync requires custom implementation or middleware.

Software development agency

Build on objectbox-java with DEV.co software developers

Confirm platform/architecture requirements, vector search feature set, and encryption/security needs before pilot. Review documentation and run performance benchmarks against your use case.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

objectbox-java FAQ

Does ObjectBox support clustering or replication?
No. ObjectBox is a local embedded database designed for on-device use. Distributed deployments require custom synchronization logic outside the core product.
Can I use ObjectBox with Spring Boot or Jakarta EE?
ObjectBox is not a server-side ORM replacement like Hibernate/JPA. It can be embedded in JVM applications, but no Spring Data integration is mentioned in provided data; requires review of official documentation.
Is encryption at rest supported?
Unknown. The README does not mention built-in encryption. Review official documentation or contact ObjectBox support for encryption options.
What is the maximum database size or performance profile?
Not specified in provided data. README claims high performance and efficient resource usage but lacks concrete benchmarks or size limits. Requires testing and official documentation review.

Custom software development services

From first prototype to production, DEV.co delivers software development services around tools like objectbox-java. Our software development agency staffs experienced software developers and web developers for custom software development, web development, integrations, and ongoing support across open-source databases and beyond.

Ready to Evaluate ObjectBox for Your Project?

Confirm platform/architecture requirements, vector search feature set, and encryption/security needs before pilot. Review documentation and run performance benchmarks against your use case.