anyproto / anytype-kotlin

Official Anytype client for Android
https://anytype.io
Other
458 stars 42 forks source link
anytype e2ee local-first offline-first p2p privacy

Anytype

Official Anytype client for Android.

Build project

Prerequisites

Your Github ID (starting with '#' character) can be found here. As to your personal Github access token, you can generate it in Developer settings in your profile settings on Github.

Then build project.

IDE setup (optional)

Based on your IDE setup, you might experience problems while accessing/importing auto-generated Kotlin classes from protocol module. These classes are currently declared in very large files, which IDE might not process as expected. If this is your case, go to your Android Studio Help section, select Edit Custom Properties option. There you should set idea.max.intellisense.filesize property as follows:

idea.max.intellisense.filesize=3500

Useful links

Our tech change log

Anytype Android app dependencies

Conventions

PR naming

{TASK-ID} {APP AREA} | {NATURE OF CHANGE: Fix, Enhancement, Feature, Design, Documentation} | {CONCISE DESCRIPTION OF WHAT HAS BEEN DONE}

App area can be App, Editor, Sets, Relations, Auth, Settings, Analytics, Tech (CI, DI, scripting, etc.), etc.

Example: Editor | Fix | Show meaningful message when failed to open file by an existing application

Git branch naming

{TASK_ID or TASK_NUMBER}-ConciseDescription

Flags

com.anytype.ci=true - for CI/CD pipeline

Updating anytype-heart (basics)

Prerequisite: brew install jq

  1. Run the following command in Terminal or Makefile:

    make update_mw
  2. Make sure your proto files located in protocol/main/proto/ compile.

  3. Make sure to update middlewareVersion version in libs.versions.toml.

Contribution

Thank you for your desire to develop Anytype together!

❤️ This project and everyone involved in it is governed by the Code of Conduct.

🧑‍💻 Check out our contributing guide to learn about asking questions, creating issues, or submitting pull requests.

🫢 For security findings, please email security@anytype.io and refer to our security guide for more information.

🤝 Follow us on Github and join the Contributors Community.


Made by Any — a Swiss association 🇨🇭

Licensed under Any Source Available License 1.0.