/plain-app

πŸ”₯ PlainApp is an open-source application that allows you to manage your phone through a web browser. Access files, videos, music, contacts, sms, calls, and more from your desktop using a secure, easy to use web interface!

Primary LanguageKotlinGNU Affero General Public License v3.0AGPL-3.0

PlainApp

δΈ­ζ–‡

PlainApp is an open-source application that allows you to manage your phone through a web browser. Access files, videos, music, contacts, sms, calls, and more from your desktop using a secure, easy to use web interface!

Get it on Google Play Get it on F-Droid Get it on GitHub

Features

  • Privacy oriented: We take your privacy seriously and use TLS + AES-GCM-256 encryption to ensure your data is secure.
  • Ad-free forever: You won't be bombarded with ads when using PlainApp.
  • No cloud services or third-party data storage: All data is kept on your device, so you have complete control over your information.
  • No Firebase Cloud Messaging/Analytics: We don't track your activity or use your data for advertising purposes. We only collect crash logs through Firebase Crashlytics.
  • User-friendly: PlainApp has a modern, customizable interface with multi-language support, light/dark theme options, and e-ink screen compatibility.
  • Desktop management: You can manage your phone from your desktop by visiting a self-hosted webpage wirelessly.
  • Contacts management: You can manage these features on the self-hosted webpage as well.
  • File management: Manage files(Internal storage, SD card, USB storage), images, videos, and audio on the self-hosted webpage.
  • Note-taking: Use PlainApp to manage your notes with a built-in Markdown editor.
  • RSS reader: Read articles in a clean UI.
  • TV casting: Cast your videos, images, and audio to your TV.
  • Video and audio playback: Play videos and audio in the app and on the webpage.
  • Backup and export: Backup and export your app data for safekeeping.
  • SMS, Calls: Read your SMS and calls on webpage.
  • Apps: View your apps and download apk from phone.
  • Screen mirror: Mirror your phone on webpage.
  • Tools: Sound meter.
  • Notifications: You can manage push notifications on the webpage.
  • Device info: You can view your device info on the webpage.
  • PWA support: You can add webpage to your home screen and experience the convenience of using the webpage like a desktop app.
  • And more features are planned for the future.

PlainApp's minimalist design is intentional, so you can focus on what matters most: your valuable data.

Video: https://www.youtube.com/watch?v=TjRhC8pSQ6Q

Reddit: https://www.reddit.com/r/plainapp

Discord: https://discord.gg/RQWcS6DEEe

QQ Group: 812409393

Disclaimer

  • ⚠️ The project is under very active development.
  • ⚠️ Expect bugs and breaking changes.
  • ⚠️ It is not perfect, I am always looking for ways to improve. If you find that the app is missing a certain feature, please don't hesitate to submit a feature request.
  • ⚠️ I kindly request everyone to ask questions and engage in discussions in a friendly manner.

Donations ❀️

This project needs you! If you would like to support this project's further development, the creator of this project or the continuous maintenance of this project, feel free to donate.

Your donation is highly appreciated. Thank you!

Screenshots

sound meter files web notes
audio images videos rss
home images videos notes
files encryption messages contacts
audio rss encryption encryption
audio rss

Compatibility

PlainApp requires Android 9.0 or higher.

Roadmap

  • ❌ Not Started
  • 🟑 In Progress
  • βœ… Completed
Feature WEB APP
Material You Theme βœ… 🟑
Share Files via Web Link ❌ ❌
Messaging between Phones with PlainApp (Bluetooth, Wi-Fi) ❌ ❌
Translation Dictionary ❌ ❌
Books ❌ ❌
To do list ❌ ❌

The ultimate goal is to turn smartphones into personal data and knowledge managers, allowing individuals to more easily exchange knowledge and data with each other through PlainApp.

FAQ

http://docs.plain.icu/faq.html

Support

It's worth mentioning that this is an open-source application. If you have doubts, you can either build your own version or choose not to use it. If you encounter any issues, feel free to open an issue on GitHub. I am always happy to help. Please do not give a one-star rating arbitrarily.

Download GraphQL schema from PlainBox

./gradlew downloadApolloSchema \
  --endpoint="http://<box-ip>:8080/graphql" \
  --schema="app/src/main/graphql/com/ismartcoding/plain/schema.graphqls" \
  --header="Authorization: Bearer <token>"

Build

  1. Generate release.jks file under $rootProject/app folder.
keytool -genkey -v -keystore ./app/release.jks -keyalg RSA -keysize 2048 -validity 10000 -alias plain
  1. Create keystore.properties file with following content under $rootProject folder.
storePassword=
keyPassword=
keyAlias=plain
storeFile=release.jks

Star history

Star History Chart