shiping
An interview assistant and an exam assistant that uses AI to provide solution ideas in real time during 「面试」 or 「在线考试」.
AI translation
Your personal AI learning companion. Understand difficult topics, build better study habits and make real progress towards your goals.
EducationGitHub @ajtollady11-collabOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A personal AI learning companion: an AI tutor, subjects and topics, a study planner, flashcards, quizzes and progress built from real activity. In development — not yet deployed or open to students.
This repository is the from-scratch implementation. See docs/milestones/
for what exists today and docs/adr/ for the decisions behind it.
| Milestone | Scope | State |
|---|---|---|
| M1a | Repository foundation, quality gates | Done (PR #1) |
| Phase 1 | Landing page, auth, onboarding, app shell and all core areas | In review, not deployed |
| Next | Vercel + Supabase projects, production AI key, launch checks | Waiting on owner approval |
Requires Node 22 and pnpm 10 (corepack enable provides pnpm), plus a local Supabase:
pnpm install
supabase start # Supabase CLI + Docker; applies supabase/migrations
# or, where Docker is unavailable: pnpm sandbox up && pnpm sandbox env
cp .env.example .env.local # then fill SUPABASE_URL / SUPABASE_PUBLISHABLE_KEY from the output
pnpm dev # http://localhost:3000
Without an ANTHROPIC_API_KEY the tutor shows a "not configured" message; set
TUTOR_PROVIDER=test locally for fixed, clearly labelled test replies.
Checks:
pnpm check # types, lint, formatting, unit tests
pnpm test:integration # RLS and database functions (needs local Supabase)
pnpm db:types:check # generated database types match the migrations
pnpm build # production build (fails on invalid environment variables)
pnpm check:bundle # fails if a secret-looking value reaches the browser bundle
pnpm test:e2e # Playwright against the production build
Next.js 16 (App Router, Cache Components) · React 19 · TypeScript (strict) · Tailwind CSS 4 · Zod · Supabase (Postgres, Auth, RLS) · Anthropic Claude · Vitest · Playwright + axe. Reasons are recorded in ADR-0001 and ADR-0002.
See CLAUDE.md for engineering rules, structure and the definition of done. Never
commit secrets: .env.example lists variable names only.
Fonts are self-hosted under the SIL Open Font License 1.1 (src/app/fonts/licenses/).