skishore / inkstone

Learn Chinese on the go - no Internet connection required!
https://www.skishore.me/inkstone/
GNU General Public License v3.0
373 stars 92 forks source link

Inkstone in action

What's new

The app version that you're on is displayed on the main page below the "Inkstone" title. If you don't see it there, you're at version 0.0.4 or earlier.

In addition to the features mentioned above, most versions include some fixes and additions to the character data. See the Installing from binary section for updated APKs, or download the app from the Google Play Store.

Introduction

Inkstone is a mobile app for people who want to learn to read and write Mandarin. It's totally free, open-source, and can be used without an Internet connection! Inkstone is licensed under the GNU General Public License v3.0. Although the app is still being developed, it has quite a few features:

Installing from binary

I've uploaded compiled Android APKs to Dropbox. Only use these binaries if you trust me and Dropbox! The legal disclaimers in the LICENSE file apply to these binaries as well: there is no warranty for this program, to the extent permitted by applicable law. See that file for full details. With those caveats stated, the pre-built binaries are here:

Most Android phones use armv7. Trying to install the APK for the wrong architecture will just result in an error message, so if you're not sure which one your phone is, try both.

Building from source

To build Inkstone, install the latest version of Meteor.js, then check out this repository and run:

$ meteor build .build --server localhost:3785
$ cp -R cordova-build-override/* .build/android/project/assets/.
$ pushd .build/android/project/cordova
$ ./build --release
$ popd

If the build goes successfully, you'll end up with APKs in:

./build/android/project/build/outputs/apk/

You'll have to sign these APKs before they can be installed on a device. See scripts/build for an example that also signs the APKs. Note that the --server parameter in the meteor build command is a dummy. Other than custom-lists downloads, the app is an entirely-client-side app.

Supported platforms

Inkstone is available for both Android and iOS. Since sideloading apps on iOS requires jailbreaking or recompiling, I have only provided pre-built Android binaries. I have also made the app available on both the App Store and on Google Play.

Open source credits

Inkstone was made possible by a number of other open-source projects, a full listing of which can be found here.

Upcoming features

See todo.txt for a list of planned features. If there's something you'd like to see added that's not in that file, open an issue or drop me an email at kshaunak "at" gmail.com.