The missing library manager for Android Developers
- ⚡ Blazing fast way to add libraries
- 🎉 No need to search the web for
that
library - 🚀 Intuitive, easy-to-learn tool
- 💎 Add multiple dependencies with a one liner
- ✌️ Automated dependency and package management
- 🔨 Automatic import custom urls (e.g. jitpack)
As an android developer I was jealous of the node.js community for their fast and reliable dependency managers, it's so easy to write yarn add <library>
and a library is imported into the project... So I made drone
for android!
If you think about it there are like 50 libraries that are used in 95% of the apps (retrofit, rxjava, gson, picasso, roboletric, recyclerview-v7, etc.)
I made this because every time I want to add (lets say) butterknife I need to
- google butterknife
- go to the readme
- find the lines to copy
- notice that butterknife has 2 dependencies
- copy and paste in my gradle file
- OPTIONAL if it was not in jcenter, go to the main build gradle and put the custom URL
OR...
drone add jakewharton/butterknife
and everything will be done for you automatically
npm install -g drone
Simple usage:
drone
addcreator/library
module
Usage
$ drone <command> <params>
$ drone install # Downloads the packages
$ drone test <creator/library> # Tests the library by fetching its version
$ drone add <creator/library> <module> # Adds a dependency to a module
$ drone remove <creator/library> <module> # Removes the dependency from a module
$ drone info <creator/library> # Retrieves the info for this package
$ drone update # Get the latest packages
$ drone list # List all of the packages
$ drone stats # Get some stats regarding the hive
$ drone hive # Opens the hive url
$ drone open <creator/library> # Opens the library's homepage
$ drone new # Creates a new one if it's not in the server yet
$ drone search <library> # Searches for the 'library' in the hive
Examples
$ drone install # Downloads the packages
$ drone info square/picasso # Shows the info for square/picasso
$ drone add square/retrofit app # Adds retrofit to the 'app' module
$ drone rm square/retrofit app # removes retrofit from the 'app' module
$ drone open google/gson # Opens GSONs homepage
$ drone new # takes you throught the creation wizard
$ drone search rxjava # Searches the hive for 'rxjava'
$ drone test square/picasso # Tests the library by fetching its version
Instead of maintaining a server with all the possible libraries I'm going with a brew approach, the community will create
a library once
and it will be available to everyone else forever in the hive!
$ drone new
follow the wizard to generate the <library>.json
file then open the pull request in the hive with this format:
hive/
<creator/library>
.json
If you look closely, when you type square/retrofit
, drone
will autofill everything for you, and even if it takes a few hours for the pull request to be accepted you'll be able to do drone add square/retrofit
because the drone new
task will add it to your personal server/folder.
MIT © Cesar Ferreira
by Freepik from www.flaticon.com is licensed by CC 3.0 BY