Commit graph

8 commits

Author SHA1 Message Date
seven
584008004b Convert to Android-only project (#1)
We were trying to target Android/iOS/Desktop with the same codebase using Kotlin Multiplatform, but that proved to be more complicated than anticipated. We are simplifying the scope of the project a bit by focusing on Android.

Co-authored-by: Severiano Jaramillo <severiano.jaramillo@gmail.com>
Reviewed-on: #1
2024-04-29 22:37:45 +00:00
Severiano Jaramillo
7dab5227dc Introduce CRC-32 validation functionality.
- Created a new shared module 'crypto' that will contain crytography specific functionality.
- Added a class to validate data using the CRC-32 algorithm. We had to create a class to do this from scratch because there is no readily made library available for Kotlin Multiplatform yet.
- Configured unit tests in the crypto module to confirm that the CRC-32 functionality is correctly implemented.
- Introduced a Mnemonics class that contains logic to convert mnemonics to a valid Dero key and viceversa. This functionality is not complete yet.
- Introduced Mnemonics support for two languages for now, English and Spanish. Adding support for more languages is a matter of adding a new Mnemonics[Language] instance. We can do that later when necessary.
2024-04-11 19:49:59 -07:00
Severiano Jaramillo
8512178a24 Restore the desktop target.
- We are not targetting desktop for the time being, but unfortunately the IDE previews (which are very useful when developing UI) are only available for the Desktop target for now. It is worth keeping the desktop target just for that. We won't be spending much time focusing on desktop though.
- Updated Compose multiplatform plugin and Kotlin versions.
- Added coroutines swing dependency to be ablet o run the desktop app.
2024-03-29 11:45:15 -07:00
Severiano Jaramillo
8b9727082a Add basic WebSocket connectivity with Dero node.
- Created a new stargate module that will contain the code to connect with the Dero nodes. This stargate module will use the ktor library, which is a multiplatform networking library that works on both Android and iOS.
- Added a bassic connectivity with a Dero node. It just connects with the node, listens for messages, and prints them out to the standard output.
- Introduced the ScreenModel library and created a basic ImportAccountScreenModel. ScreenModel classes serve to host all the logic for their corresponding screens.
- Added the Internet permssion to the Android app, to be able to connect with the internet.
- Removed the Desktop target. After discussing with Ken, we decided that investing on a Desktop app does not make sense. We will focus on Android and iOS only.
2024-03-25 21:14:16 -07:00
Severiano Jaramillo
34c82ba8f6 Add module for managing user preferences.
- Navigate to Import Account screen if there is no active account.
- Add basic node status placeholder in Import Account screen.
2024-03-09 19:06:33 -06:00
Severiano Jaramillo
b5a724137a Styling improvements
- Configure app edge to edge for better status bar appearance.
- Set minSdk to 26.
- Set launcher icon using Kee icon.
- Minor UI improvements to Import Account screen.
2024-03-06 23:55:17 -06:00
Severiano Jaramillo
ce79a8fc4d Introduce Voyager lib and configure basic Navigation.
- Voyager is a navigation library that allows us to navigate between Composable screens.
- I created basic LicenseScreen and HomeScreen.
2024-03-06 23:55:17 -06:00
Severiano Jaramillo
2dba2b6b53 Initial commit 2024-03-06 23:55:12 -06:00