尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证AI group project manager: HackOHI/O 2026
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Stop carrying your group project. Carry is a mobile-first web app that turns a class assignment into a fair, AI-generated plan, keeps a student group on track from inside the group chat they already use, and produces an evidence-based contribution receipt at the end.
Built in 24 hours at HackOHI/O 2026 (Open Challenge track).
Live: https://carry-alpha.vercel.app · Demo group: https://carry-alpha.vercel.app/p/demo42
Student group projects run in Snapchat and iMessage group chats, where work gets split unevenly, deadlines slip, and one person usually ends up carrying the team. Professors grade the group, so effort is invisible, and peer evaluations come down to memory and vibes.
mainlib/db/store.ts defines one interface with an in-memory implementation (seeded demo data, zero setup) and a Supabase implementation, selected automatically by environment variables.app/ pages and API route handlers (app/api/*)
components/ screens and UI components
lib/types.ts shared data types
lib/utils.ts ids, dates, deadline rules, workload math
lib/db/ DataStore interface, memory + Supabase stores, receipt math
lib/ai/ model client, JSON validation, prompts, fallbacks
lib/mock.ts demo project
supabase/ database schema
scripts/ demo seeding and AI key check
| Method | Route | Purpose |
|---|---|---|
| POST | /api/projects | Create a project and its members |
| POST | /api/projects/[id]/plan | AI-drafted plan (not saved) |
| PUT | /api/projects/[id]/tasks | Save the reviewed plan |
| GET | /api/p/[code] | Full project state by share code |
| POST | /api/tasks/[id]/claim | Claim a task |
| POST | /api/tasks/[id]/status | Change a task's status |
| POST | /api/tasks/[id]/confirm | A teammate confirms a finished task |
| POST | /api/tasks/[id]/stuck | Next steps and a suggested helper |
| GET | /api/projects/[id]/update-message | Group chat progress update |
| GET | /api/projects/[id]/receipt | Contribution receipt rows |
| POST | /api/projects/[id]/rubric-check | Rubric items no task covers |
| POST | /api/extract-pdf | Text from an uploaded assignment or rubric PDF |
git clone https://github.com/farazayub06/carry.git
cd carry
npm install
cp .env.example .env.local
npm run dev
Open http://localhost:3000. With no environment variables, Carry runs on in-memory demo data with rule-based AI fallbacks.
To use real services, set these in .env.local:
SUPABASE_URL and SUPABASE_SERVICE_ROLE_KEY, after running supabase/schema.sql in the Supabase SQL editorANTHROPIC_API_KEY for the AI features| Command | Purpose |
|---|---|
npm run dev | Development server |
npm run build | Production build |
npm run typecheck | Type-check |
npm run lint | Lint |
npm run seed | Load the demo project into Supabase |
Built by Faraz Ayub (backend), Preston Laryea (AI), and Thomas Dyer (frontend).