Backend Schema

How the prototype becomes a real app.

This page documents the recommended database tables and how the localStorage prototype maps to a real backend.

Recommended Stack

Next.js + Supabase + Stripe + email service.

Use Next.js for the app, Supabase for auth/database/storage, Stripe for memberships, and Resend/Brevo/Mailchimp for notifications and newsletters.

TablePurposeKey FieldsPrototype Source
usersAuth identityid, email, role, created_atfuture auth
profilesMember cards and intakeuser_id, pen_name, bio, paths, goals, visibilitybwc_profile, bwc_intake
eventsCalendar eventstitle, type, starts_at, location, host_id, capacity, visibilityadmin event items
rsvpsEvent attendanceevent_id, user_id, status, created_atbwc_rsvps
projectsMember project shelfuser_id, title, genre, status, current_words, goal_wordsbwc_projects
draftsWriter Studio documentsuser_id, project_id, title, body, folder, tags, status, word_goalbwc_drafts
tasksGoals and room tasksuser_id, title, type, room, due_at, donebwc_tasks
sparksPrompt decktitle, body, lane, created_by, visibilitydefault/admin sparks
saved_sparksMember prompt bookmarksuser_id, spark_id, created_atbwc_saved_sparks
submissionsReadings, zine, featuresuser_id, title, type, notes, file_url, statusbwc_submissions
critique_itemsFeedback queueuser_id, title, genre, words, type, status, notesbwc_critiques
resourcesArchive toolstitle, lane, body, file_url, visibilityadmin resources
zine_issuesCult Quarterly issuestitle, theme, deadline, status, published_atzine notes
announcementsHomepage/portal noticestitle, body, lane, starts_at, ends_atadmin announcements