First, install local Certificate Authority:
# Install mkcert on macOS
brew install mkcert
brew install nss
For other operating systems, see the mkcert installation guide.
Then, create a local Certificate Authority and generate SSL certificates for the Helper development project:
# Generate SSL certificates
bin/generate_ssl_certificates
Run the application and access it at helperai.dev:
bin/dev
# Run `LOCAL_DETACHED=false make local` first if you prefer to run Docker services in the foreground
Seed the database with sample data: (email/password: support@gumroad.com
/ password
and user1,...,user4@gumroad.com
/ password
)
npm run db:reset
Generate/run database migrations:
npm run db:generate
npm run db:migrate
# Run all tests
npm test
# Run a specific test file
(cd apps/nextjs && npx vitest run tests/inngest/functions/postEmailToGmail.test.ts)
This project uses Inngest for background tasks. You can view the dashboard / development server at http://localhost:8288/.
While email sending/receiving in a customer's inbox happens through Gmail, all other emails get sent using Resend and are defined at src/emails
. To preview an email, you can visit http://localhost:3060. You can also send yourself a preview email (note that some assets like images may not properly display when sending a preview email during local development):
To access Langfuse to view AI traces:
-
Access the Langfuse UI at: http://localhost:3020
-
Log in with the automatically created user:
- Email: dev@helper.ai
- Password: password
This user is automatically created for the Langfuse instance running inside Docker Compose.
You can now view and analyze AI traces for the Helper development project.