This is a simple router for forms. Watch a Demo
Before starting, ensure you have the following:
- An account with Resend
- An account with Vercel
- A PostgreSQL database (we recommend Vercel Postgres)
After creating your accounts, update your .env.example to be .env.local for running the application locally. Then, update the keys for each value.
Clone the Repository
git clone https://github.com/routerso/router.git cd router/main
Install Dependencies
This project uses pnpm (see
packageManagerinpackage.json). Install with pnpm so thepnpm.overridessecurity pins are applied — installing with npm or yarn ignores them and pulls vulnerable transitive dependencies.pnpm install --frozen-lockfile
Set Up Environment Variables
Ensure your
.envfile is correctly configured as mentioned above.Generate the Database Migrations
pnpm db:generate
Run the Database Migrations
pnpm db:migrate
Start the Development Server
pnpm dev
Set Up Environment Variables
Ensure your
.envfile is correctly configured as mentioned above.**Run Docker Command
docker compose up
- Push your code to a GitHub repository.
- Connect your repository to Vercel.
- Set the environment variables in Vercel's dashboard under "Settings > Environment Variables".
Run pnpm audit to check for known vulnerabilities.
The pnpm.overrides block in package.json force-resolves transitive dependencies
that a direct dependency still pins to a vulnerable version (for example, next
pins postcss 8.4.31, and tailwindcss reaches a vulnerable glob via sucrase).
Each entry can be removed once the parent package ships a release that depends on a
patched version on its own — re-run pnpm audit after removing one to confirm.
Requires Node.js >= 20.9.0.
For any issues or questions, please open an issue on the GitHub repository.