A modern, lightweight client for Anytype built with Rust and Dioxus.
Anytype has a great desktop, Android and iOS clients. This project focuses on cross-platform compatibility between clients using Dioxus, a modern Rust framework.
- Login/Logout with 4-digit code
- Views: Spaces, Queries, Objects
- Properties: Text, Checkbox, Select, Date
- Add/edit viewed properties
- Choose query views
- Timeline view
To use Android app you should first install AnyTask on device with a desktop Anytype installed. Then connect to the same Private network (Wi-Fi) and enter the desktop ip in the app (example: 10.0.0.45:31010).
- Request 4-digit code
- Enter the code in the app
- Client API code is generated with openapi-generator
- anytype-api
- dioxus-cli
cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --lockeddevenv shell -vdx serve --platform desktop- Android
- Settings
- Developer options
- Wireless debugging (turn on, then hold)
- Pair device with pairing code (
ip:port,code)
- Terminal
- Connect to device
adb pair ip:port- connect to device with wireless debuggingcode- verify with codeadb devices- check connected devices
- Run the app on the connected device
dx serve --platform android --device
- Debug
adb shell run-as com.Tumypmyp.AnyTask- login to Android shellls files- check app files directory
- Connect to device
dx bundle --desktopdx bundle --androidor
(devenv) bundle-android-apk- copy
openapi-version.yamltoapis/ - build the client
(devenv) client-api-generate
- add view type enums (can return types outside the enum set)
enum: - grid - table - list - galery - kanban - calendar - graph - add property name mapping
PropertyWithValue: discriminator: propertyName: format mapping: text: "#/components/schemas/TextPropertyValue" number: "#/components/schemas/NumberPropertyValue" select: "#/components/schemas/SelectPropertyValue" multi_select: "#/components/schemas/MultiSelectPropertyValue" date: "#/components/schemas/DatePropertyValue" files: "#/components/schemas/FilesPropertyValue" checkbox: "#/components/schemas/CheckboxPropertyValue" url: "#/components/schemas/UrlPropertyValue" email: "#/components/schemas/EmailPropertyValue" phone: "#/components/schemas/PhonePropertyValue" objects: "#/components/schemas/ObjectsPropertyValue"
