Brainmark – WIP
KMM Bookmark Manager
Inspiration
I bookmark lots of articles and videos and never revisit them, It would have been great if I could get some notifications regarding bookmarks that are getting old and could lose relevance, and even if I reviewed them, having some way to extract key points would be great.
So with this application I’m planning create a system where I can search my bookmarks, store key points, and search through all of them.
Contribution
I have been building this from Scratch, Contributions are welcome in form of PRs. Before your contribution I would like you to open a discussion or Issue on the Github Repository. I’m open for all the feedback regarding application architecture, features and platforms.
Application Features
- Add Bookmark manually by opening form
- Add Bookmark by share shortcut,
- Format time supported is url so url formats are supported
- You can CRUD tags and apply them to Bookmark
- Bookmarks are filtered based on Tags
- UnTagged bookmarks can be filtered separately.
- Every bookmark is scheduled for read later
- Once readed then should be marked archived
- On archievd you are asked to submit summary/keypoints as links in the page
- Keypoints are displayed as – reminders or flashcards – on home page or in app notificatiins
- Database should be synced to multiple devices/platform thus require server
- Server db could be google sheet? — not sure
Design System
Preview – WIP
Mobile Wireframes – Android & IOS
Application TechStack
-
Kotlin Multiplatform for code sharing
-
Gradle Plugins
- buildKonfig – Multiplatform BuildConfig.
-
Common Code :
- Database
- SqlDelight + GradlePlugin
- Network
- Ktor
- Dependency Injection
- Manual DI
- Async
- Coroutines
- Flows
- Navigation
- Decompose
- Utils
- SerializationX
- UUID
- Lifecycle – Multiplatform
- Decompose – Lifecycle
- Decompose – BackPressDispatcher
- Decompose – Parcelable
- DataTime – KotlinX
- Resources
- MokoResources + GradlePlugin – Font Loading
- Database
-
Android :
- Image loading
- Coil
- UI toolkit
- Jetpack Compose
- Accompanist
- FlowLayout
- PlaceHolder
- Android Components
- WebView
- Utilities
- Image loading
-
Desktop : WIP
-
Server : WIP
-
IOS : WIP
-
Web : WIP
-
Wear OS : WIP