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。 以下為已儲存的摘錄。
XingAI — AI Decision Systems for Everyday Life
Not a chatbot. Not a wrapper. Focused AI products that help you decide.
Live at xingai.app — flagship: AI Industry Map
2026.10.07f Body type uses the system UI stack (system-ui / -apple-system / BlinkMacSystemFont) instead of Inter — SF-like on Apple devices without embedding SF Pro.
2026.10.07e Growth-stage copy: /apps Live splits Flagship / Daily / Research; home Start here names the same bands; team heading drops “agent” vs Planned spine conflict; Specialized roles (planned) wording; Build/Decision Workshop CTA; Services workshop renamed.檢視完整 README ↗Not a chatbot. Not a wrapper. Focused AI products that help you decide.
Version: 2026.10.25b
Live at xingai.app — flagship: AI Industry Map
2026.10.25b XingAI Home preview is live at home.xingai.app. The catalog card links there.
2026.10.25a Catalog: XingAI Home is listed as coming soon (/apps/home-ai). The product shell is in the home repo. home.xingai.app is not live.
2026.10.16a Internal ADR cabinet: ADR-0016 stays number 0016 and now says it is not Invest's or Travel's ADR-0016. Cache plan section 0 names the real Invest stack (FastAPI + SQLite + Auth.js). See docs/xingai-cache-backend-dev-plan-20261016.md.
2026.10.12a GSC work-order pass: Story meta description shortened (en/zh/ko); Contact drops hard “24 hours” SLA for honest reply copy. See growth-monitor docs/gsc-work-orders-2026-10.md.
2026.10.07f Body type uses the system UI stack (system-ui / -apple-system / BlinkMacSystemFont) instead of Inter — SF-like on Apple devices without embedding SF Pro.
2026.10.07e Growth-stage copy: /apps Live splits Flagship / Daily / Research; home Start here names the same bands; team heading drops “agent” vs Planned spine conflict; Specialized roles (planned) wording; Build/Decision Workshop CTA; Services workshop renamed.
2026.10.07d Soft-404 fix (dynamicParams=false + invalid locale notFound); /pricing Free/Pro/Unlimited waitlist; FAQ/llms.txt/hero align 6 live + 4 focus; Privacy/Terms (Resend + cookieless Analytics, Free tier); About XingAI copy; ShopRadar/demo JSON-LD PreOrder; logo sizes; Contact form trackCta; YouTube @xingaiapp; square favicon.
2026.10.07c Favicon fix: tab/apple icons use the square X mark (favicon.ico, xingai-mark.png) instead of the wide xingai-logo.png wordmark.
2026.10.07b Retention-stage marketing: agent roles vs platform Workforce roles naming (no more agents collision); Start here focuses Invest/Travel/Cook/Wear (6 live catalog, growth story on 4); Free tier / Pro-next copy replaces forever-public-beta tone (en/zh/ko).
2026.10.07a Cook AI catalog sync: Decide-first copy (scan → confirm → one meal), features/roadmap match cook.xingai.app (Pantry/My Meals planned after completion), llms.txt + disclaimer + product-wiki updated (en/zh/ko).
2026.10.06a Internal docs: project-structure diagram (docs/diagrams/) and Perplexity / Google Labs vs xingai.app research note (docs/research/). No public page change.
2026.10.05b /team share/download poster now uses the same team-persona-poster-{en,zh,ko}.webp as /about (site order, site tagline); the HTML cast above is unchanged.
2026.10.05a /about shows the team poster in each locale (team-persona-poster-{en,zh,ko}.webp): Xing above the five leaders in /team order with their nicknames, tagline “AI Decision Systems”, matching /team copy; links to /team.
2026.10.04j /team HTML cast: Xing (星哥) above five centered leaders with nicknames; decision flow is an avatar timeline; Character Bible poster stays for download/share.
2026.10.04i Team is in the desktop top nav and mobile bottom tab bar (was drawer/footer only); drawer lists Team higher.
2026.10.04h Banter chat: Xing Ge sits on the right, smiling while the agents argue (xing-ge.webp).
2026.10.04g Character Bible “Five personalities. One mission.” has locale images: team-character-bible-{en,zh,ko}.webp on /team.
2026.10.04f /team banter (“日常开会现场”) plays as a looping chat: typing dots → typewriter line → next speaker; respects prefers-reduced-motion.
2026.10.04e /team: hide full org-chart poster for now (assets kept under public/team/team-org-poster-*.webp for later); Character Bible stays.
2026.10.04d Character Bible poster now includes Hua An / 华安(唐伯虎) as Tech & Tools (was missing from the five-leader picture).
2026.10.04c Team group image: full 55-person org posters in en/zh/ko (team-org-poster-{en,zh,ko}.webp) — Five leaders · One team · One mission; Hua An on Tech & Tools; refresh team-og.jpg.
2026.10.04b Team + home: add Hua An / 华安(唐伯虎) as fifth agent (Tech & Tools); homepage grid is five agents; /team shows org poster with code lead; avatar hua-an.webp.
2026.10.04a Team: Character Bible poster on /team (五人格 · 一使命); agent nicknames (嘴最硬 / 最会哄人 / …); Xing Ge called out as Vision; homepage team lead names the four agents + 星哥; refresh team-og.jpg + llms.txt. Product roles stay research / challenge / verify / advocate — org-chart poster is brand asset only.
2026.10.01ag Contact form posts to POST /api/contact and delivers via Resend (no more fake mailto success). Needs RESEND_API_KEY + CONTACT_TO_EMAIL / CONTACT_FROM_EMAIL on Vercel; see Contact section below.
2026.10.01af Multilingual SEO: About, Contact, Engineering, Services and Agent Security Assessment get zh/ko titles, descriptions, self-canonicals and hreflang (their /zh and /ko pages used to canonicalize to English); /apps title is localized; <html lang> is rendered per locale on the server (en / zh-CN / ko) because [locale]/layout.tsx is now the root layout. /apps is grouped Live → Demos → Coming soon → Internal tools (collapsed) with jump links, flagship Invest AI first. Home puts Start here right after the hero, keeps Team and Co-founders together, and shows co-founders as two compact columns on phones. The workshop CTA on Services goes to the contact page instead of mailto:.
2026.10.01ae Hero: the How-it-works link above the Map CTA is removed (missed the 2026.10.01ad merge), and on desktop the copy column centers against the taller preview instead of leaving an empty band bottom-left.
2026.10.01ad Hero intro is one paragraph (en / 中文 / 한국어): heroGoal now carries the decision-system pitch, the Industry Map (cited research, not a buy list) and Travel/Cook/Wear; the duplicate heroSub paragraph is gone so the Map CTA sits higher above the fold. The "How XingAI turns ideas into products" link above the CTA is removed; How it works stays in the nav, drawer, footer and the System Spine section.
2026.10.01ac Contact form inputs use real border/background tokens again (dark theme was nearly invisible because --hairline / --surface were undefined).
2026.10.01ab Co-founder photos on the homepage a bit larger (still rounded square, not circle).
2026.10.01aa Homepage hover polish: FAQ / Start here / System Spine step cards lift with accent glow; Spine icons enlarge and spin 360°; agent avatars on the team strip enlarge and spin (all respect prefers-reduced-motion).
2026.10.01z Homepage hero adds SEO-aligned heroGoal copy (en / 中文 / 한국어) under the typewriter heading — decision systems vs chatbot, Travel/Cook/Wear + Industry Map, informational outputs; left column top-aligns with the preview, shared body type, tighter CTA spacing. Decision-path cards lift and pick up a blue edge on hover (respects prefers-reduced-motion).
2026.10.01y Hero carousel advances when the heading “Real questions, checked reasoning — then you decide.” finishes typing (each loop), instead of on its own 4.8s timer; hover/focus still holds the slide, reduced motion keeps both still.
2026.10.01x Hero carousel auto-advances again (every 4.8s through Invest, Travel, Cook, Wear); pauses on hover or keyboard focus, restarts after a dot click, and stays still under prefers-reduced-motion.
2026.10.01w Hero preview image loads eagerly with high priority and goes through the Next image optimizer (~30 KB instead of the ~300 KB original); it was lazy-loaded and unoptimized, so the first screen could sit on an empty frame.
2026.10.01v Hero carousel is back (dots + “See all systems”), now with the four live products — Invest, Travel, Cook, Wear — starting on Invest with no autoplay. Adds Vercel Web Analytics (production only, cookieless page views), same as Travel / Cook / Invest.
2026.10.01u (reverted in 01v) Hero preview showed only the Industry Map.
2026.10.01t Homepage polish (en / 中文 / 한국어): hero drops the “XINGAI” label and the lead is one sentence about the Industry Map; on phone “Start here” cards show a 16:9 shot and only the “can do” line; build section reads as “Build your own AI decision system” on the same approach and platform.
2026.10.01s Homepage “Start here” shows the three live everyday products — Travel, Cook, Wear — so it matches the hero’s “Try a live product”; ShopRadar (demo) stays on /apps.
2026.10.01r Homepage drops the Demos block (Performance Sim and T Today stay on /apps, which now carries the finance-demo disclaimer in en / 中文 / 한국어). Hero secondary button is “Try a live product / 试用已上线产品 / 라이브 제품 써 보기”, jumping to “Start here”; contact stays in the nav and the build section.
2026.10.01q Korean pages wrap between words site-wide (html[lang="ko"] keep-all); the per-section rules from 01m/01o are removed so Chinese still wraps between characters.
2026.10.01p Header nav adds “Build with us / 合作共建 / 함께 만들기”, linking to the homepage build section (/#build); shown from ~60rem and in the mobile drawer, not in the five-tab bottom bar. Nav labels no longer wrap mid-word.
2026.10.01o Homepage “From question to your decision” band under the hero (HomeDecisionPath): Question → Research → Challenge → Evidence → You decide, worked through a Travel example (en / 中文 / 한국어), ending on “nothing is booked or bought for you”; links to Travel AI. Investing is deliberately not the example. Five cards in a row on desktop, stacked with connectors on phone.
2026.10.01n Homepage reorder: hero preview stays on the Invest AI Industry Map (no autoplay; dots still switch products); on phone the copy and primary CTA come before the preview; “Start here” drops the duplicate Invest card (Travel / Cook / ShopRadar, one row on desktop) and sits above Demos; agents and System Spine move below the product sections.
2026.10.01m Homepage hero copy (en / 中文 / 한국어): subtitle “Not just chat.”; card heading “Real questions, checked reasoning — then you decide.” replaces “Capture once. Evolve forever.” (kept on /story); duplicate value pill removed; shorter lead focused on the Industry Map as research, not a buy list. Primary CTA unchanged.
2026.10.01l System Spine light-theme contrast: stronger card borders/fills, dark green wires (no white glow), clearer stage pills; dark theme glow kept.
2026.10.01k Typewriter on hero card heading “Capture once. Evolve forever.” (letter-by-letter, loops with a short pause); long heroSub lead is static again.
2026.10.01j Hero typewriter slowed (~28ms/char, up to ~14s for long EN lead).
2026.10.01i Homepage hero lead (heroSub) types in on load (en / 中文 / 한국어); respects prefers-reduced-motion; caret fades after finish.
2026.10.01h Homepage System Spine: center the desktop circle board when max-height shrinks its width (was hugging the left edge of a wider card).
2026.10.01g Catalog honesty: Passive Income Idea → live; register Tech Blog as live at blog.xingai.app with demo shots + /engineering link. Replaces stale PR #7 / feat/register-tech-blog (coming-soon) work.
2026.10.01f Homepage hero hierarchy: page h1 “AI Decision Systems” + story-aligned subtitle and card h2 (“Capture once. Evolve forever.”); longer hero lead; more left-column spacing; mobile shows the product carousel above the copy. HomeSystemLoop is a desktop circle with per-node accents, heavier arrowed arcs, and a center ring (stack on phone). /story keeps the detailed spine + 5W product expanders. Design refs under docs/ux/.
2026.10.01e Story + homepage system loop polish: clearer spine roles on HomeSystemLoop; /story product rows expand to Who / What / Where / When / Why (from catalog fields). Desktop loop connectors use a flowing light along SVG paths (prefers-reduced-motion stays static). No new family page — upgrades the existing story map.
2026.10.01d Status badges: no emoji; every status (Live / Demo / Coming soon, en / 中文 / 한국어) uses the same CSS dot, only Live pulses (off under reduced motion). Homepage Demos cards read status from the catalog (T Today = Demo, matching /apps); “What can I use XingAI for today?” separates Live from public demos.
2026.10.01c Theme follows the OS by default: no stored choice means “System” (tracks live OS changes); the theme menu adds System / 跟随系统 / 시스템 설정. Only explicit choices are stored, under xingai.theme; a legacy auto-written theme=light is treated as unset, a legacy dark is kept.
2026.10.01b Investment product renamed to XingAI Invest AI in the catalog, JSON-LD and legal headings (en / 中文 / 한국어), matching invest.xingai.app. AI Industry Map stays the feature name; /apps/investment-assistant URL unchanged.
2026.10.01a Homepage hero de-duplication: hero leads with Invest (then Travel, Cook, Eating Decision, SAT) and drops the “Jump into a free demo” list and the “Explore core systems” grid, which repeated the carousel. The carousel keeps its dots plus a “See all systems” link; the curated Start here shelf (Invest / Travel / Cook / ShopRadar) is unchanged. Invest preview image is now a current /ai-map capture.
2026.09.30c Home Demos: T Today lead says early access via Contact (matches /contact card link; no longer implies a direct open of t.xingai.app).
2026.09.30b Travel AI catalog honesty: trip history is Free (this browser only), not a Pro upsell; local history roadmap → shipped; synced/account history → planned.
2026.09.30a Team page: EN + KO relationship cartoons — section no longer zh-only; localized heading/alt + /team/team-cartoon-{en,zh,ko}.webp.
2026.09.28l Eating Decision honesty (Eat This Much R2): Scan Plate feature = photo attach (vision not live); roadmap splits attach shipped vs plate OCR planned; product name stays XingAI Eating Decision.
2026.09.28k Daily Assistant: roadmap marks device-local persisted todos as shipped (Gmail OAuth still Planned).
2026.09.28j Travel AI deep-audit SEO: app detail pages get their own WebPage + product FAQ (no more homepage FAQ bleed); OG prefers dark screenshot when available; Travel GitHub source CTA restored (repo public).
2026.09.28i Homepage hero core systems: add Travel AI as the 5th card (carousel + Jump into a free demo).
2026.09.28h Routine AI honesty: roadmap demotes OpenAI recommendations to Planned; ships Demo rhythm engine + live routine.xingai.app; features say demo + optional OpenAI and device-local light check-in.
2026.09.28g ShopRadar catalog alias: /apps/shopradar → /apps/shop-radar (en / zh / ko) so detail pages stop 404ing on the hyphen-less URL.
2026.09.28f Engineering Communication Coach honesty: public GitHub source (was 404 private); deploy roadmap Planned (DNS still NXDOMAIN, not In progress); llms.txt coming-soon line. Catalog stays noindex until engineering-coach.xingai.app is live. Coming-soon footer CTA / ItemList fixes from 28e still apply.
2026.09.28e Parent AI honesty: PreOrder offer → /contact; coming-soon footer CTA is early access (not “Try free demo”); drop meta keywords on app pages; public catalog ItemList includes Coming soon (still noindex until live domain); Parent features + llms.txt line.
2026.09.28d Founder AI honesty: roadmap uses Built (internal) instead of Shipped while Coming soon; product OG image; coming-soon FAQ JSON-LD; PreOrder offer points to /contact; llms.txt lists Founder AI. Catalog stays noindex until founder.xingai.app is live.
2026.09.28c Passive Income Idea: catalog Demo (not Coming soon) with live passive.xingai.app, deploy roadmap shipped, public GitHub, sitemap/indexable, and mother-site llms.txt product line.
2026.09.28b Trust fixes: hero preview no longer clamps value props; /legal index lists Privacy / Terms / Disclaimer (was 404); early-access apps (T Today) use “Request early access” instead of a fake Live demo on Free.
2026.09.28 Investment Assistant catalog: research console feature says free with sign-in (en / 中文 / 한국어); app detail <title> / Open Graph / Twitter titles share the same | XingAI suffix.
2026.09.27 adds the “How XingAI works” illustration to /story as a
desktop-only hero (light/dark pair: how-xingai-works-light.webp /
-dark.webp, hidden under 48rem where the HTML loop carries the content) and
replaces story-og.jpg with a 1200×630 version of the dark illustration.
Localized alt text and OG alt copy updated.
2026.09.26d marks Idea Vault (#001) as Available today on /story once
vault.xingai.app is live. llms.txt points at the private login URL.
2026.09.26c adds a compact “How XingAI works” loop block on the homepage,
between the Start here shelf and Quick answers. It reads the same
systemLayers data as /story, so stage tags (Available today / Being built /
Planned) stay in sync, and the whole card links to /story. Hero and CTAs are
unchanged.
2026.09.26b renames the homepage and About links to /story to “How XingAI
turns ideas into products” in en / zh / ko. Nothing else on the homepage changes.
2026.09.26 rewrites /story as “How XingAI works”: a loop diagram
(Idea → Idea Vault #001 → Orchestrator #002 → agents → apps → Evidence /
Growth / Ops → back to the Vault) with each layer tagged Available today /
Being built / Planned. All 22 catalog apps are now grouped by domain
(Everyday, Learning, Investing, Research & ventures), and a separate trust and
feedback section covers Evidence Engine, Growth Monitor, Ops Status and Eval
Registry. The Invest flow, Try it and About sections stay as before. llms.txt
gains a matching “How XingAI works” block.
2026.09.25e puts ShopRadar on the homepage “Start here” shelf with
Invest / Travel / Cook, and moves the catalog card next to Travel (Commerce AI).
Waitlist: shopradar.xingai.app.
2026.09.25d restyles homepage “See all apps” as a green Live-badge CTA
(cta--browse) — same status-live tokens as the Live pill, larger touch target.
2026.09.25c turns the homepage “See all apps” control into an outline CTA
button (same pattern as hero secondary), instead of a small section-lead link.
2026.09.25b wires Bing IndexNow (public key file + scripts/submit-indexnow.py)
and points README contact / deployment notes at xingai.app (Vercel alias is
preview-only, not the product URL).
2026.09.25 first registered ShopRadar (shop-radar) on the catalog only.
It is now also on the homepage shelf (see 2026.09.25e).
2026.09.25 also tightens SEO / AEO / GEO: short home meta, fixed og:title,
FAQ + llms.txt aligned on the Industry Map, homepage shelf is Invest / Travel /
Cook, and coming-soon plus internal ops pages are noindex and off the sitemap.
2026.09.25 points the homepage primary CTA at the Invest AI Industry Map
(invest.xingai.app/ai-map) and hides Growth Monitor from the homepage shelf
(it stays on /apps). The Decision Agent catalog preview is also replaced:
the old 760×620 SVG went through next/image and showed as a black card. The
new light/dark pair is 1536×1024 (same 3:2 crop as other app cards) and SVG
thumbs skip the optimizer.
2026.09.24 lists XingAI Decision Agent as a public demo at
decision.xingai.app. The catalog card now has a
live CTA, EN / 中文 / 한국어 copy, and notes that /demo only renders Invest AI
worker cache (ADR-053). Custom-domain DNS is in place.
2026.09.20 also points Investment Assistant live demo at invest.xingai.app/ai-map (the public research map). Copy no longer sends visitors to the signed-in dashboard or describes the product as an allocation board.
2026.09.06 adds Passive Income Idea (passive-income) — one-Idea research shell at passive.xingai.app; see 2026.09.28c for demo status alignment.
2026.07.26 adds two new demo products to the catalog: Evidence Engine (evidence-engine) — claim → evidence → citation verification with a light/dark dashboard — and Eval Registry (eval-registry) — an Every-Eval-Ever-compatible evaluation registry with a fail-on-regression CI gate (GitHub).
2026.07.16 adds Ops Status to the product catalog as a demo (ops-status) — lightweight HTTP uptime board at xingai-ops-status.vercel.app, with light/dark screenshots.
2026.07.16 also adds Engineering Communication Coach as coming soon (engineering-coach), with light/dark demo screenshots and a 14-day communication curriculum.
2026.07.14 adds Learn AI to the product catalog as a separate demo product from Research AI.
XingAI builds focused AI decision systems for everyday life. Each product solves one real decision — with structure, clarity, and privacy in mind.
| Product | Domain | Tagline |
|---|---|---|
| Eating Decision | Health AI | Eat Better |
| Cook AI | Cooking AI | Cook Smarter |
| Wear AI | Style AI | Dress Smarter |
| Routine AI | Habits AI | Live Better |
| SAT AI | Education AI | Prep Smarter |
| Research AI | Learning AI | Decide What to Learn |
| Learn AI | Learning AI | Learn With Structure |
| Engineering Communication Coach | Learning AI | Speak Like a Senior |
| Tech Blog | Engineering | How We Ship |
| Parent AI | Parenting AI | Family Support |
| Travel AI | Travel AI | Explore Better |
| Decision Agent | Finance AI | Outcome In. Decision Out. |
| ShopRadar | Commerce AI | Stop Guessing What To Sell |
| Invest AI | Finance AI | Invest Smarter |
| Performance Sim | Finance AI | Simulate Rules |
| T Today | Finance AI | Plan Today |
| Growth Monitor | Operations AI | Fix Pages First |
| Ops Status | Operations AI | Uptime at a Glance |
| Evidence Engine | Research AI | Verify Every Claim |
| Eval Registry | Operations AI | Diff Your Evals |
Eating Decision (meal.xingai.app), Cook AI (cook.xingai.app), Wear AI, Travel AI (travel.xingai.app), and Invest AI (invest.xingai.app) are live. Tech Blog is live at blog.xingai.app. Passive Income Idea is live at passive.xingai.app. Decision Agent is a public demo at decision.xingai.app. ShopRadar is a waitlist demo at shopradar.xingai.app. SAT AI is available as a demo at sat.xingai.app. Research AI is available as a demo at research.xingai.app. Learn AI is available as a demo at learn.xingai.app. Engineering Communication Coach is coming soon (GitHub). Growth Monitor is early access at growth.xingai.app. Ops Status is a demo at xingai-ops-status.vercel.app. Evidence Engine and Eval Registry are engineering demos on the site; Eval Registry is open source (). is available at . at is early access—free to request via . Parent AI is in development with a UX demo on the site.
See docs/marketing-site-standards.md.
不是重做新产品,而是在前一版上升级。Use the internal wiki as the central product/project map for all XingAI apps. It is repo documentation for team and agent use, not a public website route. Individual product repos keep implementation details, while this repo owns portfolio-level rules.
npm install
npm run dev
Regenerate Performance Sim / T Today marketing screenshots (mobile 3:2, light + dark):
# lab.xingai.app + invest-t-advisor on :3001 (T_AUTH_MODE=off)
npm run capture:demos
Regenerate Travel AI marketing images from the Travel app hero artwork:
npm run capture:travel
Regenerate Learn AI marketing screenshots (desktop 3:2, light + dark):
# Learn AI API :8002 + web :3002 (see xingai-learn README)
npm run capture:learn
Public URL: https://xingai.app/. Use that in docs, product cards, and cross-links.
https://xingai-dot-app.vercel.app/ is the Vercel project alias (preview / fallback only). Do not use one-off deployment URLs.
After a production deploy that includes the IndexNow key file, run python3 scripts/submit-indexnow.py to notify Bing.
See docs/domain-and-deployment-notes.md for alias history and deployment commands.
app/
├── components/ # AppIcon, ThemedImage, ThemeContext, Header, Footer
├── data/ # Product catalog (apps.ts)
├── i18n/ # Translations & language context
├── apps/ # Product listing & detail pages
├── about/ # About page
├── contact/ # Contact page
├── robots.ts # Search engine crawling rules
├── sitemap.ts # Auto-generated sitemap
├── layout.tsx # Root layout with JSON-LD & SEO metadata
└── page.tsx # Homepage
public/ # Logos, icons, favicons, demo screenshots
The /contact form posts to POST /api/contact, which sends mail through Resend (same provider as Invest AI / Founder). It never opens mailto: and never shows success unless Resend accepts the message.
Set these on the Vercel project (see .env.example):
| Env | Required | Notes |
|---|---|---|
RESEND_API_KEY | Yes | Without it the form returns an honest error |
CONTACT_TO_EMAIL | No | Defaults to [email protected] |
CONTACT_FROM_EMAIL | Recommended | Verified Resend sender, e.g. XingAI Contact <[email protected]>. Falls back to Resend’s onboarding sender for smoke tests only |
reply_to is the visitor’s email so you can answer from the inbox.
We also build custom AI products for teams and founders. Share your idea — we'll design, build, and ship it with you.
© xingai.app