Neon / portal template support (#713)

TODOs:
- [x] Do restart when checkout / restore if there is a DB
- [x] List all branches (branch id, name, date)
- [x] Allow checking out versions with no DB
- [x] safeguard to never delete main branches
- [x] create app hook for neon template
- [x] weird UX with connector on configure panel
- [x] tiny neon logo in connector
- [x] deploy to vercel
- [x] build forgot password page
- [x] what about email setup
- [x] lots of imgix errors
- [x] edit file - db snapshot
- [x] DYAD_DISABLE_DB_PUSH
- [ ] update portal doc
- [x] switch preview branch to be read-only endpoint
- [x] disable supabase sys prompt if neon is enabled
- [ ] https://payloadcms.com/docs/upload/storage-adapters
- [x] need to use main branch...

Phase 2?
- [x] generate DB migrations
This commit is contained in:
Will Chen
2025-08-04 16:36:09 -07:00
committed by GitHub
parent 0f1a5c5c77
commit b0f08eaf15
50 changed files with 3525 additions and 205 deletions

View File

@@ -5,6 +5,8 @@ export interface Template {
imageUrl: string;
githubUrl?: string;
isOfficial: boolean;
isExperimental?: boolean;
requiresNeon?: boolean;
}
// API Template interface from the external API
@@ -26,6 +28,9 @@ export const DEFAULT_TEMPLATE = {
isOfficial: true,
};
const PORTAL_MINI_STORE_ID = "portal-mini-store";
export const NEON_TEMPLATE_IDS = new Set<string>([PORTAL_MINI_STORE_ID]);
export const localTemplatesData: Template[] = [
DEFAULT_TEMPLATE,
{
@@ -37,4 +42,15 @@ export const localTemplatesData: Template[] = [
githubUrl: "https://github.com/dyad-sh/nextjs-template",
isOfficial: true,
},
{
id: PORTAL_MINI_STORE_ID,
title: "Portal: Mini Store Template",
description: "Uses Neon DB, Payload CMS, Next.js",
imageUrl:
"https://github.com/user-attachments/assets/ed86f322-40bf-4fd5-81dc-3b1d8a16e12b",
githubUrl: "https://github.com/dyad-sh/portal-mini-store-template",
isOfficial: true,
isExperimental: true,
requiresNeon: true,
},
];