Librarian is an easy way to serve your iOS & Android builds on your local network, and make dogfeeding and testing development versions of your app effortless.
- Support for iOS
IPA
& AndroidAPK
- Simple & Quick Setup
- Clean Web Interface
- Easily add builds
- Ability to have Internet accessible Public URLs for builds
- Instant app installs on the local network, your testers don't have to wait!
- No more dependency on
Crashlytics Beta
/Testflight
$ [sudo] npm i -g librarian-server
$ librarian setup
If you can get an EACCESS / Permissions
error while while running npm i -g librarian-server
, just run sudo npm link librarian-server
, before running librarian setup
.
The setup will ask you a few questions to configure Librarian on your system. You can just press return throughout the process to choose the default values.
Run the following command to start the Librarian server.
$ librarian start
This will start the web interface, and will print the URL to it on the console, along with a QR code to the URL for quick access 😁
Librarian uses ngrok tunneling to serve your localhost over the Internet using a secure
HTTPS
tunnel. Also,HTTPS
is mandatory for iOS Builds to work.
Submit builds to Librarian using:
$ librarian submit <pathToFile> [options]
The pathToFile
must be the full path to the IPA
or APK
file. Example: /Users/jenkins/MyApp.ipa
, and should be accessible by Librarian.
You can pass in the following additional options along with the path of the build file.
Option | Short | Example | Description |
---|---|---|---|
--branch <branch> |
-b |
--branch master |
git branch the build is from |
--notes <notes> |
-n |
--notes "Release Candidate Build" |
release notes for the build |
--public |
-p |
Just add the flag --public |
allow the build to be downloaded over the HTTPs tunnel (by default, builds can only be downloaded on the local network) |
Librarian will autodetect the type of build iOS / Android
using the file extension, will create a copy of the build in it's assets, and make it available for download on it's web interface.
The Librarian server should be running while submitting a build.
Librarian follows semantic versioning. You can update by running:
$ npm i -g librarian-server
$ librarian update
Librarian is built up of two parts:
- Librarian - The Command Line tool, written in NodeJS (this repository).
- Librarian Web - The Web Interface of Librarian, built in Jekyll.
Developed by biocross & designed by madebytushar
MIT