尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Live Next.js family site. Photos, milestones, RAG search.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Mila is a blog dedicated to my daughter to capture her life memories month to month.
• Next.js App Router + React 19
• Supabase Auth & Database (Postgres, RLS)
• Role‑based protected routes: (protected) and (public) segments
• Responsive UI with Bootstrap 5 + SCSS
• AI chatbot streaming from OpenAI (ChatKit embed built but currently parked)
• TTS for blog posts via /api/blog/[slug]/audio
• Vercel Analytics, ready for CI/CD
• Node.js 22.x (matches package.json engines, .nvmrc, .node-version)
• npm / pnpm / yarn
• Supabase project and keys
• OpenAI API key檢視完整 README ↗Mila is a blog dedicated to my daughter to capture her life memories month to month.
(protected) and (public) segments/api/blog/[slug]/audiopackage.json engines, .nvmrc, .node-version)git clone https://github.com/stozo04/mila-nextjs.git
cd mila-nextjs
npm install # or pnpm/yarn
cp .env.example .env.local # fill in values
npm run dev
NEXT_PUBLIC_SUPABASE_URL="" # Supabase project URL (from dashboard > Settings > API) NEXT_PUBLIC_SUPABASE_ANON_KEY="" # Supabase anon/public key (used in client/browser) SUPABASE_SERVICE_ROLE_KEY="" # Supabase service role key (server-side only, keep secret!)
OPENAI_API_KEY="" # Your OpenAI secret key OPENAI_VECTOR_STORE_ID="" # Optional: OpenAI Vector Store ID for File Search OPENAI_MODEL="" # Optional: override the default model (e.g., gpt-4.1, gpt-4o-mini) OPENAI_CHATKIT_WORKFLOW_ID="" # Workflow ID from OpenAI Agent Builder for ChatKit
SITE_URL="" # Used for backend or deployment config (sometimes Netlify/Vercel) NEXT_PUBLIC_SITE_URL="" # Base URL for auth callbacks (e.g., https://yourapp.com)
NEXT_PUBLIC_ALLOWED_EMAIL="" # Legacy setting; not an enforced allowlist NEXT_PUBLIC_ADMIN_EMAIL="" # Email for admin account (grants elevated privileges)
src/components/Shared/Chatbot/OpenAIChatBot.tsx
src/app/layout.tsx and pinned bottom-right — this is what users see/api/chat-stream over SSEsrc/components/Shared/Chatbot/ChatKitWidget.tsx
src/app/layout.tsx along with its import; nothing renders it/api/chatkit/sessionsrc/app/api/chatkit/session/route.ts
OPENAI_CHATKIT_WORKFLOW_ID) for a ChatKit client secretsrc/app/api/chat-stream/route.ts
OPENAI_VECTOR_STORE_ID is setevent: done with { conversationId, sources }, and event: errorsrc/
app/ # App Router
api/ # Route handlers
blog/[slug]/audio/route.ts
chat-stream/route.ts
components/ # Reusable React components
lib/ # Client & server helpers
styles/ # SCSS & global CSS
docs/ # Long‑form docs, assets
npm run dev: Start dev servernpm run build: Production buildnpm run start: Start built appnpm run lint: Shared agent synchronization check, then ESLinttools[0].vector_store_ids: Ensure OPENAI_VECTOR_STORE_ID is set and the ID exists in your OpenAI project.Built by Steven Gates.