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)
🚧 Currently in Pre-alpha, not ready for use in production environments. Please be careful to back up. 🚧
Supported features:
- ✅ Support Markdown edit and preview
- ✅ Full-text search using jieba-rs (Chinese and English supported)
- ✅ Sync notes using a self-hosted Joplin server
- ✅ Manual and automatic synchronization
- 🚧 Possible compatibility with Joplin's sync format (End-to-end encryption is not supported)
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