Logo Lanfrica

Faisat-Creator/Afri-Soro

Domaine:

education

Type de record:

software
Créateur:
Fai
Hôte:
AfriSoro is an African-focused Soroban learning and mental arithmetic platform designed to make mathematics more engaging, practical, and culturally relevant for African learners. # AfriSoro — African Soroban Learning Platform AfriSoro combines the traditional Japanese Soroban abacus with African market contexts to teach mental mathematics through culturally relevant scenarios. ## Features - 🧮 **Interactive Soroban Engine** — Digital abacus with bead manipulation - 🌍 **African Scenarios** — Market, agriculture, transport, household contexts - 🎮 **Gamification** — XP, levels, badges, streaks - 📊 **Adaptive Learning** — Difficulty adjusts based on performance - 🏆 **Progress Tracking** — Analytics for students and teachers - 💱 **Multi-Currency** — Nigeria (₦), Ghana (₵), Kenya (KSh), and more ## Tech Stack - **Frontend:** Next.js 14, React, TypeScript, Tailwind CSS, Framer Motion - **Backend:** Express.js, Node.js, TypeScript - **Database:** PostgreSQL with Prisma ORM - **Authentication:** JWT tokens ## Getting Started ### Prerequisites - Node.js 18+ and npm - PostgreSQL database ### Installation ```bash # Install Node.js from nodejs.org (if not already installed) # Navigate to project cd afrisoro # Install all dependencies (root + frontend + backend) npm run install:all # Set up backend environment cd backend cp .env.example .env # Edit .env with your DATABASE_URL and JWT_SECRET # Initialize database npm run db:push npm run db:generate npm run db:seed # Set up frontend environment cd ../frontend cp .env.example .env # Edit .env with NEXT_PUBLIC_API_URL (default: localhost) # Run both frontend and backend cd .. npm run dev ``` **Frontend:** localhost **Backend API:** localhost ## Project Structure ``` afrisoro/ ├── backend/ # Express.js API server │ ├── prisma/ │ │ ├── schema.prisma # Database schema │ │ └── seed.ts # Seed data │ ├── src/ │ │ ├── routes/ # API routes │ │ ├── middleware/ # Auth middleware │ │ ├── lib/ # Utilities (prisma, jwt, scenarios, adaptive, gamification) │ │ └── server.ts # Expres …