Personal technical blog migrated from Hexo to Astro.
npm install
npm run devnpm run build
npm run previewPosts are loaded from MongoDB through the CMS repository. Each article keeps a
legacyPath so old Hexo URLs keep working, for example:
legacyPath: "/2018/03/01/DUBBO的配置与使用手册/"Images uploaded from the admin page are stored in Supabase Storage.
Required server-side variables:
MONGODB_URIMONGODB_DBSUPABASE_URLSUPABASE_SERVICE_ROLE_KEYSUPABASE_STORAGE_BUCKET
Required browser-safe auth variables for /admin Google login:
PUBLIC_SUPABASE_URLPUBLIC_SUPABASE_ANON_KEYCMS_OWNER_EMAILS
PUBLIC_SUPABASE_ANON_KEY must be the Supabase anon public key. Do not expose
SUPABASE_SERVICE_ROLE_KEY to the browser.
ADMIN_TOKEN is only a local fallback when Supabase public auth variables are
not configured.
The project uses Astro server output on Vercel:
- Framework Preset: Astro
- Build Command:
npm run build - Output Directory:
dist