Customized Educational Chat Assistant for Boyo Social Welfare Foundation
EduCare is an AI-powered educational assistant platform designed specifically for underserved rural children. Built on Boyo Social Welfare Foundation's mission of "博學幼教,關懷弱勢" (Enlightening Education, Caring for the Vulnerable), it provides personalized learning support, after-school tutoring, and advanced Retrieval-Augmented Generation (RAG) capabilities with support for PDF, DOCX, and MD educational materials. Powered by Google Gemini API, integrated with Turso DB for cloud persistence and QR code sharing.
Since 2002, Boyo Social Welfare Foundation has been dedicated to education for disadvantaged rural children, bridging urban-rural education gaps through after-school tutoring and resource sharing. EduCare leverages AI to deliver:
Requirements: Node.js 18+ and pnpm
Install Dependencies:
pnpm install
Set Environment Variables:
Copy .env.local and configure AI API keys (e.g., GEMINI_API_KEY) and Turso DB credentials (TURSO_DATABASE_URL, TURSO_AUTH_TOKEN).
Initialize Database (Optional):
pnpm run init-turso
Start Development Server:
pnpm run dev
The app will run at http://localhost:5173.
To test browser encryption and other secure-context APIs with a self-signed local certificate, use:
pnpm run dev:https
This starts the app at https://localhost:5173. Your browser will show a self-signed certificate warning the first time; accept it once to continue local testing.
@/* points to project root| Command | Description |
|---|---|
pnpm run dev | Start HTTP dev server |
pnpm run dev:https | Start self-signed HTTPS dev server |
pnpm run build | Build production version |
pnpm run preview | Preview production build |
pnpm run quality | Run all quality checks (lint, format, typecheck, test) |
pnpm run test | Run Vitest tests |
pnpm run test:ui | Run test UI interface |
pnpm run lint:fix | Auto-fix lint issues |
pnpm run init-turso | Initialize Turso DB |
pnpm run migrate-to-turso | Migrate data to Turso |
pnpm run test:coverage├── components/ # React UI components (assistant/, chat/, ui/, settings/, core/)
├── services/ # Business logic (db.ts, tursoService.ts, geminiService.ts, embeddingService.ts etc.)
├── scripts/ # Utility scripts (initTurso.ts, migrateToTurso.ts, testVectorSearch.ts)
├── types.ts # TypeScript interfaces
├── App.tsx # Main app component
├── CLAUDE.md # Claude Code dev guide
└── package.json # Dependencies & scripts
Contributions welcome! Follow CLAUDE.md guidelines. Use pnpm run quality to validate changes.
MIT License - see LICENSE.
Boyo Social Welfare Foundation × EdTech Innovation
Equal learning opportunities for every child 🌟
213 commits
TypeScript
95.9%
HTML
2.6%
JavaScript
1.4%
Customized Educational Chat Assistant for Boyo Social Welfare Foundation
EduCare is an AI-powered educational assistant platform designed specifically for underserved rural children. Built on Boyo Social Welfare Foundation's mission of "博學幼教,關懷弱勢" (Enlightening Education, Caring for the Vulnerable), it provides personalized learning support, after-school tutoring, and advanced Retrieval-Augmented Generation (RAG) capabilities with support for PDF, DOCX, and MD educational materials. Powered by Google Gemini API, integrated with Turso DB for cloud persistence and QR code sharing.
Since 2002, Boyo Social Welfare Foundation has been dedicated to education for disadvantaged rural children, bridging urban-rural education gaps through after-school tutoring and resource sharing. EduCare leverages AI to deliver:
Requirements: Node.js 18+ and pnpm
Install Dependencies:
pnpm install
Set Environment Variables:
Copy .env.local and configure AI API keys (e.g., GEMINI_API_KEY) and Turso DB credentials (TURSO_DATABASE_URL, TURSO_AUTH_TOKEN).
Initialize Database (Optional):
pnpm run init-turso
Start Development Server:
pnpm run dev
The app will run at http://localhost:5173.
To test browser encryption and other secure-context APIs with a self-signed local certificate, use:
pnpm run dev:https
This starts the app at https://localhost:5173. Your browser will show a self-signed certificate warning the first time; accept it once to continue local testing.
@/* points to project root| Command | Description |
|---|---|
pnpm run dev | Start HTTP dev server |
pnpm run dev:https | Start self-signed HTTPS dev server |
pnpm run build | Build production version |
pnpm run preview | Preview production build |
pnpm run quality | Run all quality checks (lint, format, typecheck, test) |
pnpm run test | Run Vitest tests |
pnpm run test:ui | Run test UI interface |
pnpm run lint:fix | Auto-fix lint issues |
pnpm run init-turso | Initialize Turso DB |
pnpm run migrate-to-turso | Migrate data to Turso |
pnpm run test:coverage├── components/ # React UI components (assistant/, chat/, ui/, settings/, core/)
├── services/ # Business logic (db.ts, tursoService.ts, geminiService.ts, embeddingService.ts etc.)
├── scripts/ # Utility scripts (initTurso.ts, migrateToTurso.ts, testVectorSearch.ts)
├── types.ts # TypeScript interfaces
├── App.tsx # Main app component
├── CLAUDE.md # Claude Code dev guide
└── package.json # Dependencies & scripts
Contributions welcome! Follow CLAUDE.md guidelines. Use pnpm run quality to validate changes.
MIT License - see LICENSE.
Boyo Social Welfare Foundation × EdTech Innovation
Equal learning opportunities for every child 🌟
213 commits
TypeScript
95.9%
HTML
2.6%
JavaScript
1.4%