How ali-jemo/labpoint-ashurix works
LabPoint is a student task-and-credit marketplace using ARI, with a Telegram bot serving as an entry point to a Firebase-backed web app. The principal workflow is to enter the app, post or accept a task, complete it, and settle the reward; users can also transfer ARI and view account, notification, and leaderboard features. The sampled code shows direct browser-to-Firebase reads and writes rather than an API-server path. Some page implementations were not sampled, so their internal data wiring is not inferred.
Main entry points: App.jsx App routes · TaskDetailsModal.jsx Task actions · AuthContext.jsx Auth context · bot.py Telegram bot
Components 19
App entry
- Telegram bot
bot.py - App routes
frontend/src/App.jsx
Web experience
- Onboarding
frontend/src/pages/Onboarding.jsx - Dashboard
frontend/src/pages/Dashboard.jsx - Profile
frontend/src/pages/Profile.jsx - Settings
frontend/src/pages/Settings.jsx - Leaderboard
frontend/src/pages/Leaderboard.jsx - Notifications
frontend/src/pages/Notifications.jsx - Theme context
frontend/src/context/ThemeContext.jsx
Tasks and ARI
- Wallet
frontend/src/pages/Wallet.jsx - Task market
frontend/src/pages/TaskMarket.jsx - Create task
frontend/src/pages/CreateTask.jsx - Task actions
frontend/src/components/TaskDetailsModal.jsx - ARI transfer
frontend/src/components/SendAriModal.jsx
Firebase platform
- Auth context
frontend/src/context/AuthContext.jsx - Firebase setup
frontend/src/firebase.js - Firestore
Other components
- Student
- Telegram
Connections 24
- Student → Telegram: opens bot
- Telegram → Telegram bot: sends commands
- Telegram bot → Telegram: offers app link
- Student → App routes: opens web app
- App routes → Onboarding: routes to
- App routes → Dashboard: routes to
- App routes → Wallet: routes to
- App routes → Profile: routes to
- App routes → Task market: routes to
- App routes → Create task: routes to
- App routes → Leaderboard: routes to
- App routes → Settings: routes to
- App routes → Notifications: routes to
- Onboarding → Auth context: requests login
- Auth context → Firebase setup: uses services
- Firebase setup → Firestore: provides database
- Auth context → Firestore: reads and writes profiles
- Settings → Firestore: updates profile
- Create task → Firestore: creates task and charges balance
- Task market → Task actions: opens task actions
- Task actions → Firestore: updates task and settles reward
- Task actions → Firestore: records activity
- Wallet → ARI transfer: opens transfer
- ARI transfer → Firestore: transfers ARI and records activity