Requirements
Bun runtime
PostgreSQL database (managed PostgreSQL recommended)
Stripe account for subscription billing and webhook configuration
Git and access to the project source code
Production hosting compatible with TanStack Start
- Install the Project
Clone or download the source code, navigate to the project directory, and install dependencies using Bun.
bun install
- Configure Environment Variables
Create a local environment configuration file based on the project's environment template, if provided.
Configure the required application settings, including:
PostgreSQL connection URL
Authentication and session secrets, if applicable
Application base URL
Stripe API keys
Stripe webhook signing secret
Any additional third-party service credentials used by the project
Use separate credentials for development, testing, and production. Never commit secrets to version control.
- Configure the Database
Create a PostgreSQL database and provide its connection URL through the application's environment configuration.
EverAfter uses tracked database migrations and startup schema provisioning. The schema contains 32 tables and is designed to initialize a fresh database automatically at application startup.
For production deployments, back up existing data before applying schema changes and follow the project's migration and recovery procedures.
- Start the Application
Run the project using the scripts defined in package.json.
bun run dev
For a production build, use the build and start scripts defined in the repository. Confirm that the production environment is configured before deployment.
- Configure Stripe Billing
Create or access a Stripe account and configure the application's Stripe credentials.
For initial testing:
Enable Stripe test mode.
Configure the checkout integration with the appropriate test credentials.
Register the webhook endpoint exposed by the application.
Subscribe to the webhook events required by the billing implementation.
Configure the webhook signing secret in the application environment.
Complete a test checkout and verify that the premium subscription is recorded.
The subscription integration has been exercised in Stripe test mode against the live deployment. Before accepting real customer payments, verify the live-mode configuration, production webhook delivery, subscription lifecycle handling, and payment-related error paths.
- Run the Tests
Use the repository's documented scripts to run the available checks, including automated end-to-end tests.
Verify the main user journey:
Account registration and onboarding
Personalized plan creation
Dashboard and planning workflows
Guest, RSVP, budget, and vendor features
Subscription checkout and webhook processing
Review the recovery runbook if any test or deployment step fails.
- Production Deployment
Deploy to a hosting environment compatible with the application's runtime and server-rendering requirements.
Before launch:
Configure production environment variables.
Verify database connectivity and schema initialization.
Confirm authentication and wedding-scoped authorization.
Check the production health endpoint.
Verify all eight supported languages.
Configure Stripe live-mode credentials and webhooks when ready to accept real payments.
Run the relevant smoke tests and establish database backups.
Handover Notes
The project includes a structured application architecture, tracked database migrations, automated end-to-end testing infrastructure, and a recovery runbook to support ongoing development and ownership transfer.
Important: Exact environment variable names, available package scripts, webhook endpoint paths, and hosting requirements should be confirmed against the supplied source code and project documentation before deployment.