ruslin-note / ruslin-android

A simple notes application that supports syncing notes using a self-hosted Joplin server.
GNU General Public License v3.0
158 stars 9 forks source link
android compose kotlin material-design material-design-3

Ruslin

A simple notes application that supports syncing notes using a self-hosted Joplin server.

English by DeepL  |  简体中文

[![Build](https://github.com/ruslin-note/ruslin-android/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/ruslin-note/ruslin-android/actions/workflows/build.yml) [![License](https://img.shields.io/github/license/ruslin-note/ruslin-android)](https://github.com/ruslin-note/ruslin-android/blob/main/LICENSE) [![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/ruslin-note/ruslin-android?include_prereleases&label=preview&logo=github)](https://github.com/ruslin-note/ruslin-android/releases) [![Downloads](https://img.shields.io/github/downloads/ruslin-note/ruslin-android/total)](https://github.com/ruslin-note/ruslin-android/releases) [![Mastodon Follow](https://img.shields.io/mastodon/follow/109781051461798350?domain=https%3A%2F%2Ffosstodon.org&style=social)](https://fosstodon.org/@ruslin)
notes folders editor search account

🚧 Currently in Pre-alpha, not ready for use in production environments. Please be careful to back up. 🚧

Supported features:

Download

<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="80"> <img src="https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png" alt="Get it on Google Play" height="80" /> <img src=".github/get-it-on-github.png" alt="Get it on GitHub" height="80"> or nightly.

Ruslin is a reproducible build of app, you don't need to worry about F-Droid and other store signature issues, see: Towards a reproducible F-Droid.

Build

The following instructions are based on a Linux development environment and an arm64 physical device for debugging.

Requirements

Build Instructions

1. You need to set the NDK environment variable.

Example:

export ANDROID_HOME=$HOME/Android/Sdk
export NDK_VERSION=26.1.10909125

2. Build the Rust library.

You can learn about how Kotlin interoperates with Rust from uniffi-rs.

Run build.sh in the ruslin-data-uniffi directory.

cd ruslin-data-uniffi
./build.sh

3. Build the apk.

./gradlew :app:assembleDebug

For more build details, refer to Github Actions.

Credits

License

GNU GPL v3.0