DBFlow alternatives and similar libraries
Based on the "Database" category.
Alternatively, view DBFlow alternatives based on common mentions on social networks and blogs.
-
mapdb
MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine. -
Exposed
Exposed is a prototype for a lightweight SQL library written over JDBC driver for Kotlin language. -
kotlin-gremlin-ogm
Kotlin-gremlin-ogm is a type-safe object/graph mapping library for Gremlin enabled graph databases. -
Ktorm
A lightweight and efficient ORM Framework for Kotlin. It provides strong typed and flexible SQL DSL and many convenient extension functions to reduce our duplicated effort on database operations. -
kotlin-jpa-specification-dsl
This library provides a fluent DSL for querying spring data JPA repositories using spring data Specifications. -
krush
Idiomatic persistence layer for Kotlin, based on Exposed. It’s based on a compile-time JPA annotation processor that generates Exposed DSL table and objects mappings from your data classes. -
fluid-mongo
Coroutine support for MongoDB built on top of the official MongoDB Asynchronous Java Driver. -
jds
Jenesis Data Store: a dynamic, cross platform, high performance, ORM data-mapper. Designed to assist in rapid development and data mining. -
zeko-sql-builder
Zeko SQL Builder is a high-performance lightweight SQL query library with optional data access through HikariCP & Vert.x JDBC client -
potassium-nitrite
Potassium Nitrite is a kotlin extension of nitrite database, an open source nosql embedded document store with mongodb like api.
Get performance insights in less than 4 minutes.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of DBFlow or a related project?
Popular Comparisons
README
README
DBFlow is fast, efficient, and feature-rich Kotlin database library built on SQLite for Android. DBFlow utilizes annotation processing to generate SQLite boilerplate for you and provides a powerful SQLite query language that makes using SQLite a joy.
DBFlow is built from a collection of some of the best features of many database libraries. Don't let an ORM or library get in your way, let the code you write in your applications be the best as possible.
Supports:
Kotlin: Built using the language, the library is super-concise, null-safe and efficient.
Coroutines: Adds coroutine support for queries.
RX Java: Enable applications to be reactive by listening to DB changes and ensuring your subscribers are up-to-date.
Paging: Android architecture component paging library support for queries via QueryDataSource
.
SQLCipher: Easy database encryption support in this library.
SQLite Query Language: Enabling autocompletion on sqlite queries combined with Kotlin language features means SQLite-like syntax.
Changelog
Changes exist in the releases tab.
Usage Docs
For more detailed usage, check out it out here
Including in your project
Add jitpack.io to your project's repositories:
allProjects {
repositories {
google()
// required to find the project's artifacts
// place last
maven { url "https://www.jitpack.io" }
}
}
Add artifacts to your project:
apply plugin: 'kotlin-kapt' // only required for kotlin consumers.
def dbflow_version = "5.0.0-alpha1"
// or 10-digit short-hash of a specific commit. (Useful for bugs fixed in develop, but not in a release yet)
dependencies {
// Use if Kotlin user.
kapt "com.github.agrosner.dbflow:processor:${dbflow_version}"
// Annotation Processor
// if only using Java, use this. If using Kotlin do NOT use this.
annotationProcessor "com.github.agrosner.dbflow:processor:${dbflow_version}"
// core set of libraries
implementation "com.github.agrosner.dbflow:core:${dbflow_version}"
implementation "com.github.agrosner.dbflow:lib:${dbflow_version}"
// sql-cipher database encryption (optional)
implementation "com.github.agrosner.dbflow:sqlcipher:${dbflow_version}"
implementation "net.zetetic:android-database-sqlcipher:${sqlcipher_version}@aar"
// RXJava 2 support
implementation "com.github.agrosner.dbflow:reactive-streams:${dbflow_version}"
// Kotlin Coroutines
implementation "com.github.agrosner.dbflow:coroutines:${dbflow_version}"
// Android Architecture Components Paging Library Support
implementation "com.github.agrosner.dbflow:paging:${dbflow_version}"
// adds generated content provider annotations + support.
implementation "com.github.agrosner.dbflow:contentprovider:${dbflow_version}"
}
Pull Requests
I welcome and encourage all pull requests. Here are some basic rules to follow to ensure timely addition of your request: 1. Match coding style (braces, spacing, etc.) This is best achieved using Reformat Code shortcut, command+option+L on Mac and Ctrl+Alt+L on Windows, with Android Studio defaults. 2. If its a feature, bugfix, or anything please only change code to what you specify. 3. Please keep PR titles easy to read and descriptive of changes, this will make them easier to merge :) 4. Pull requests must be made against develop
branch. Any other branch (unless specified by the maintainers) will get rejected. 5. Have fun!
Maintainer
Originally created by Raizlabs, a Rightpoint company