A blazing fast, powerful, and very simple ORM android database library that writes database code for you.
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github remove floating readme file. Oct 21, 2018
contentprovider-annotations fix accidental test removal. move content provider classes into separ… May 24, 2018
contentprovider [deps] update dependencies to latest except android sdk. Sep 26, 2018
core fix accidental test removal. move content provider classes into separ… May 24, 2018
coroutines [Coroutines] added missing artifacts task Nov 6, 2018
gradle/wrapper [Versions] update to androidx dependencies. update to use new robolec… Oct 20, 2018
lib [Transactions] updated doc to latest api. Oct 21, 2018
paging [Database] replace usage of executeTransactionAsync to begin version … Oct 21, 2018
processor fix accidental test removal. move content provider classes into separ… May 24, 2018
reactive-streams move every project into com.dbflow5 subpackages. move content provide… May 24, 2018
sqlcipher move every project into com.dbflow5 subpackages. move content provide… May 24, 2018
tests [Transactions] updated doc to latest api. Oct 21, 2018
usage2 [Doc] update model doc to accurate latest. Oct 21, 2018
.editorconfig Support for EditorConfig Dec 4, 2015
.gitignore first commit with most of the implementation. Will not function here … Sep 7, 2014
.gitmodules [version] update to 4.0.1 due to submodule issues. May 12, 2017
LICENSE Updating License File Jul 24, 2015
README.md [Doc] fix readme dependencies. Oct 21, 2018
SUMMARY.md GitBook: [develop] 9 pages modified Oct 21, 2018
build.gradle [Versions] update to androidx dependencies. update to use new robolec… Oct 20, 2018
dbflow_banner.png added banner May 5, 2015
gettingstarted.md GitBook: [develop] 9 pages modified Oct 21, 2018
gradle.properties move every project into com.dbflow5 subpackages. move content provide… May 24, 2018
gradlew writing the beginnings of the compiler. will begin full run of it. go… Oct 28, 2014
issue_template.md GitBook: [develop] 60 pages modified Oct 21, 2018
java-artifacts.gradle removed bintray upload stuff. updated gradle plugin version Apr 15, 2016
kotlin-artifacts.gradle [lib] remove javadoc commented out task.keep sources as full. Dec 8, 2017
proguard-rules.pro first commit with most of the implementation. Will not function here … Sep 7, 2014
settings.gradle fix accidental test removal. move content provider classes into separ… May 24, 2018

README.md

README

Image

JitPack.io Android Weekly Android Arsenal

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

Maintained by agrosner (@agrosner)