Elemental ZEC – UI Component Kit and Payment Processor

Hi, apologies for the lack of updates and progress! I’m nearing the completion of the fifth milestone and will be making another post once it is complete.

Here is an updated link for the grant proposal on the new grants platform: Gallery View: Zcash Community Grants Program

Building an SSO/authentication server and scalable payment processing backend infrastructure has resulted in considerably more time and work being needed than I had anticipated for the payment processing milestones. I ran into a bit of a dead-end with the TypeScript GraphQL/PostgreSQL database architecture that I had built; the codebase became too tangled and would’ve been unstable and slow to add new features to. I’ve decided to build a Python Flask microservice REST API for the SSO server (OAuth2 provider), and am replicating this architecture for the backend of Elemental Pay. Code for the Flask server here: Python microservice refactor by macintoshhelper · Pull Request #4 · elemental-zcash/sso · GitHub . Have been working on some test coverage too.

Soon I’ll publish the Elemental Pay website with the proof of concept Point of Sale payment flow; this will be usable by physical merchants on a smartphone (web app) and will work with a viewing key and in-conjunction with a wallet app of the merchant’s choice. After the implementation of a front-end flow, I’ll work on linking up the account system backend and dashboard for merchants with invoice support, etc.

Re Twitter integration, the official Twitter API has become virtually unusable for third party clients due to the new pricing model and new rules that state that it is not allowed to “create or attempt to create a substitute or similar service or product to the Twitter Applications”. As part of the last milestone, the 1.0.0 release of Elemental Zcash, I’ll integrate Twitter sign-in to ZPublish (which will work in tandem with the sign-in with Zcash SSO feature) and a proof-of-concept tweet import feature into ZPublish using the Twitter data takeout JSON.

This grant has taken considerably longer than planned; this is mostly due to the fact that I’ve been trying to accomplish too many different tasks and context switch between different codebases/projects and the backend infrastructure has been a lot more work than I expected. I’d be keen to focus on developing Elemental Pay after this grant and depending on community enthusiasm, would like to apply for additional funding for Elemental Pay (I’d be happy to continue working on it straight away and could apply for retroactive funding if community feedback is positive). After some user testing and adoption, Elemental Pay should have a nice path forward for being able to bring in some revenue from merchants that would prefer to use a hosted option rather than self-host the open-source repo/platform themselves which should make the project sustainable in the future.

5 Likes