This is a multi-step progress form project built with Next.js and TypeScript. It allows users to fill in details such as name, date of birth, dropdown options, and upload files. The project enhances the user experience with a visually appealing progress bar and step completion tracker. The backend uses Turso (SQLite), Drizzle ORM, and TypeScript within a monorepo setup.
Before you begin, ensure you have the following environment variables configured in your .env
file:
-
Cloudinary API Key:
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME
: Your Cloudinary API key for handling file uploads.NEXT_PUBLIC_CLOUDINARY_UPLOAD_PRESET
: Your Cloudinary cloud name.
-
Database:
NEXT_PUBLIC_TURSO_DATABASE_URL
: The URL to connect to your Turso SQLite database.NEXT_PUBLIC_TURSO_AUTH_TOKEN
: The token to authenticate with the Turso database.
To set up the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/your-repo/multi-step-progress-form.git](https://github.com/sid0000007/KYC_Onboarding.git cd kyc_form
-
Install dependencies:
npm i
-
Run locally
npm run dev
-
Go to Browser and access
localhost:3000

- Frontend: Next.js
- Styling: TailwindCSS + shadcn etc.
- Backend: TypeScript, Turso, Drizzle ORM
- Database: SQLite