Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RoboRecap: current state of RoboSats development and TODOs by priority. #897

Open
1 of 6 tasks
Reckless-Satoshi opened this issue Oct 16, 2023 · 1 comment
Open
1 of 6 tasks
Labels
discussion 💬 This issue has become a forum of ideas help wanted Extra attention is needed

Comments

@Reckless-Satoshi
Copy link
Collaborator

Reckless-Satoshi commented Oct 16, 2023

Finalize Federated Frontend (High-priority)

  • The Federated client is kind of ready, but there are still some bugs so user experience is not smooth. It needs testing, QA and bug fixing. The current work is in branch the-federation-layer-v0.5.0 and: we should refrain ourselves to add any new feature or work into main :D Let's directly build anything new on the federated client from now on.
  • The federated client needs to be rebased over main once it has the new F2F feature. The F2F might need some fixes as it possibly conflicts with the federated client. There is possibly linting issues introduced with the F2F feature (current the-federation-layer-v0.5.0 branch is free of linting errors, and we should strive to keep it lint-error-free)
  • Fix Federated client Android APP. The federation-layer branch introduced a lot of changes, there are some issues that make the Android app crash. These have not been investigated yet, possibly very easy fix.

Finalize client-side identity generator (medium-priority)

We have built a Rust module that can be compiled into a WASM and into a native library from Android. The WASM works amazingly well. It's just 1.1 MB and it can generate any robot and any nickname. This is great as now Robot identity generated is completely decentralized. The add-robo-identities-wasm branch introduces new functionalities to generate in parallel all robot avatars for the order book and cache them into an array: woah, it works amazingly well! The NPM package for the new module can be created using https://github.com/reckless-satoshi/robo-identities

  • The only issue left to get this feature out is to make it run in Android. The WASM/Webworker does not work on the Android app. Therefore, it has to be compiled into a native library and be called from Java. I was playing around and learning how build the Rust modul and integrate them into our React-Native app. The branch with my tests is https://github.com/RoboSats/robosats/tree/add-android-rust . This created several librust_module.so under /mobile/android/app/src/main/jniLibs/ARCHITECTURE/librust_module.so (4 of them, one per architecture). I do not exactly recall the steps I took, but it required installing the rust targets for the different architectures, for example rustup target add rustup target add x86_64-linux-android for x86_64, or rustup target add aarch64-linux-android for arm64. Then a simple ./gradlew assembleRelease was capable of also compiling the Rust modules and placing them in the right directory. I never managed to call these modules from Java / React-Native / Webview component.

Improve Android app notifications and torification (medium-priority)

Finalize RoboSats PRO MVP (low-priority)

  • Our current 127.0.0.1:8000/pro frontend is still half baked. This is a fun, creative and relaxed task. Basically a couple widgets are still missing, including a fully featured RobotGarage widget and a port of our OrderDetails and TradeBox components. We can also add some functionalities to the new ToolBar. With that, we will have our MVP RoboSats PRO client ready! The amount of overlap with RoboSats Basic is huge, so a lot of components can be directly re-utilized and maintance of both clients should be very easy in the future. For the last year, every new component to RoboSats Basic as been redesigned to have an API suitable for their use within the PRO client.
@Reckless-Satoshi Reckless-Satoshi changed the title Recap: current state of Development and TODOs by priority. RoboRecap: current state of RoboSats development and TODOs by priority. Oct 16, 2023
@Reckless-Satoshi Reckless-Satoshi added discussion 💬 This issue has become a forum of ideas help wanted Extra attention is needed labels Oct 16, 2023
@KoalaSat
Copy link
Member

Federation branch rebased now with the F2F changes https://github.com/KoalaSat/robosats/tree/the-federation-layer-v0.5.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion 💬 This issue has become a forum of ideas help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants