Please describe your proposed solution
Summary and Description
In 2025, Charli3 wants to migrate to a self-service solution. As part of that initiative we propose personalized sections on our charli3.io website where different user groups can access personalized data, documentation, and notifications relevant only to them.
Current Developer Portal
portal.charli3.io current shows all push-based oracle updates and includes every node update, every API call, every on-chain aggregate current price update, every historical aggregate price update.
<u>SOLUTION </u>
Node Operator Section on portal.charli3.io
This deliverable requires both a front-end and back-end component with integration between them. As a user of portal.charli3.io, I can find a section on the Charli3 Developer Portal delivering only node operator information and data:
- As a Public User
- Application process details to become a node operator for Charli3
- Documentation including system requirements and reward details
- Download open-source Node Software
- As a Node Operator
- Secured access through wallet-based authentication
- View a Dashboard with active data feeds
- Performance Analytics and historical performance data (costs/gas fees, feed updates, number of servers, rewards, and more as we scale)
- Self-service management (apply to run more feeds, terminate contract for an active feed, and dispute a reward)
- Auto-generate and export node config for existing feeds (onboard new operators)
Login-gated Customer Section
Charli3 customers will specific an admin wallet. As a Charli3 customer, there will be a private personalized Customer section on portal.charli3.io that contains the following information and data:
- Secured access through wallet-based authentication
- Dashboard containing:
- Status of active feeds contracted by customer
- Historical data (consumption, costs, and any delays issues with feeds recorded with incident reports)
- Tracking and retrieval of invoice reports
- Information to pay invoices if applicable
- Record of incidents and relevant notifications
Additional Features:
This segregation also enables the Charli3 team to manage communication and send targeted maintenance updates to the relevant user group.
<u>IMPLEMENTATION PLAN:</u>
Phase 1: Database Design
This includes designing a master database schema to store key information about node performance, customer usage and other relevant data points including identifying the data that can be queried from on-chain and what can be stored in the database for meaningful analytics.
Phase 2: Backend API Service Development
This service interface will be responsible for querying and delivering all the required information from the database and on-chain data via secure and access-restricted endpoints.
Phase 3: Node Operator Dashboard (Frontend)
Develop the Node Operator interface, allowing operators to access performance analytics, reward reports, profits, and on-chain update costs. Ensure that operators can monitor their node operations, with easy access to key metrics and historical performance data.
Phase 4: Customer Dashboard (Frontend)
Design and develop customer interface that allows them to view their personalised data, including feed usage, consumption records, associated costs, and invoices.
Integrate the front-end with the API to deliver customer-specific data securely.