Survival LLM
A free AI assistant and survival library (1.5 million offline articles) that runs on your own computer, with no internet. Shows the source of every answer. Mac and Windows.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗AI-powered career intelligence for designers. Upload your CV → get a personalised Future Self Blueprint™ → evolve through guided learning experiences.
Live: https://wingspan.designsbyamit.com
WingSpan is a two-part platform for designers:
Blueprint (/wingspan) — Upload your resume and portfolio links. WingSpan's AI pipeline extracts your career data, runs Career Alpha™ analysis across 5 dimensions (market intelligence, futures analysis, human advantage, career ROI, intrinsic signal), and generates a personalised Future Self Blueprint with 3 career bets (Safe, Growth, Bold), gap analysis, a growth roadmap, and actionable next steps.
Design Evolution (/paths) — A daily learning platform that guides your growth through structured experiences drawn from your Blueprint. AI mentor, competency tracking, learning paths.
| Layer | Tech |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack) |
| Language | TypeScript |
| Styling | Tailwind CSS + CSS custom properties |
| Animation | Framer Motion |
| Database | PostgreSQL (Neon) via Prisma 7 |
| AI — Analysis | Groq (llama-3.3-70b-versatile) |
| AI — Vision | Google Gemini 1.5 Flash (PDF vision fallback) |
| Auth | Google OAuth 2.0 (direct, PKCE + CSRF) |
| Deployment | Vercel |
app/
(app)/ # Design Evolution platform (authenticated)
page.tsx # Home dashboard
paths/ # Learning paths explorer
experience/[id]/ # Individual experience + AI mentor
profile/ # User profile, competencies, streak
wingspan/ # Wingspan Blueprint flow (public)
api/
extract/ # POST: parse CV files → ExtractedCareerData
career-alpha/ # POST: Career Alpha™ intelligence engine
blueprint/ # POST SSE: stream Blueprint generation
refine/ # POST: per-section AI refinement
auth/google/ # GET: OAuth init + callback
auth/me|logout/ # Session management
login/ # Google Sign-In
onboarding/ # Career track + domain selection
page.tsx # Public landing page
privacy/ terms/ # Legal pages
components/
screens/ # Wingspan flow screens (Welcome, Footprint, Discovery, Validation, Blueprint)
blueprint/ # Blueprint section components (ProfileMap, CareerIntelligence, PathSelection, GapAnalysis, GrowthRoadmap, Resources)
experience/ # Design Evolution experience components
home/ # Design Evolution home components
paths/ # Learning path components
profile/ # Profile components
layout/ # AppNav
ui/ # Shared UI primitives
lib/
claude.ts # All Groq AI calls (extract, blueprint streaming)
career-alpha.ts # Career Alpha™ engine with caching
pipeline.ts # Background pipeline runner (staggered UX)
auth.ts # JWT session management
db.ts # Prisma client (Neon in prod, SQLite in dev)
parsers/ # File parsers (PDF via unpdf, DOCX, XLSX, TXT)
export.ts # Blueprint → Markdown / HTML export
mentor.ts # AI mentor streaming (Design Evolution)
context/
WingspanContext.tsx # Global state machine for Blueprint flow
types/
wingspan.ts # All TypeScript types
design-evolution.ts # Design Evolution platform types
prisma/
schema.prisma # Data model
migrations/ # PostgreSQL migrations
seed*.ts # Data seeding scripts
public/
brand/ # Logo assets (LogoColor.svg, Logo.svg, LogoWings.svg, WingSpanLogo.svg, LogoWing.png)
# Install dependencies
npm install
# Copy env template and fill in values
cp .env.example .env.local
# Generate Prisma client
npx prisma generate
# Run migrations
npx prisma migrate deploy
# Seed the database (optional — loads Design Evolution content)
npx tsx prisma/seed.ts
# Start dev server
npm run dev
Open http://localhost:3000 for the landing page, or http://localhost:3000/wingspan for the Blueprint flow.
| Variable | Description |
|---|---|
DATABASE_URL | PostgreSQL connection string (pooled) |
DIRECT_URL | PostgreSQL direct connection (for migrations) |
JWT_SECRET | 32+ char secret for session cookies |
GROQ_API_KEY | Groq API key (llama-3.3-70b-versatile) |
GEMINI_API_KEY | Google Gemini key (PDF vision fallback) |
GOOGLE_CLIENT_ID | Google OAuth client ID |
GOOGLE_CLIENT_SECRET | Google OAuth client secret |
NEXT_PUBLIC_GOOGLE_CLIENT_ID | Same as above (for client-side OAuth init) |
NEXT_PUBLIC_APP_URL | Your deployed URL (e.g. https://wingspan.designsbyamit.com) |
UNSPLASH_ACCESS_KEY | Unsplash key (experience hero images) |
NEXT_PUBLIC_FIREBASE_* | Firebase config (legacy, can be removed) |
/api/extract parses files and calls Groq to structure career data (~5-10s)/api/blueprint. Events: step, observation, ping, complete, error./api/refine with the section name + instruction. Returns partial Blueprint updates merged into state.The vercel.json build command runs:
npx prisma generate && npx prisma migrate deploy && next build
Add a Neon Postgres database via Vercel Storage to get DATABASE_URL injected automatically.