bitcraft3r / bolt-boilerplate-nextjs

Supercharge your Next.js projects with Bolt Boilerplate: Convex-powered real-time interactions, Clerk authentication, and Shadcn UI. Setup in minutes.
https://getbolt.vercel.app
22 stars 3 forks source link

Bolt Boilerplate ⚡

Bolt Boilerplate is a Next.js framework integrated with Convex real-time database for seamless interactions, Clerk for authentication, and Shadcn/ui for stunning and customizable UI.

Designed to streamline your web development process, Bolt eliminates the hassle of setup by providing full CRUD functionality, seamless database integration, and user authentication right from the start.

Say goodbye to the complexities of React state management as Bolt integrates Convex, simplifying your development workflow. Whether you're a seasoned developer or just starting out, Bolt empowers you to build stunning and dynamic web applications effortlessly, allowing you to focus on bringing your ideas to life.

Features

Bolt Boilerplate Landing page wireframe

Quick Start

1. Clone the Repository:

git clone https://github.com/bitcraft3r/bolt-boilerplate-nextjs.git

2. Install Dependencies:

cd bolt-boilerplate-nextjs
npm install

3. Setup Convex Development Server:

Run the Convex development server and create a new project:

npx convex dev

This will auto-populate .env.local file with the following:

CONVEX_DEPLOYMENT=dev:something-random-123
NEXT_PUBLIC_CONVEX_URL=your_public_convex_url

4. Setup Clerk Authentication:

Setup a Clerk project and add the following environment variables to the .env.local file:

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
CLERK_SECRET_KEY=your_clerk_secret_key

In your Clerk project, create a JWT Template, select Convex, then make sure to click Save changes. Copy the Issuer URL in the JWT Template to replace in @/convex/auth.config.ts in the providers domain.

If required, setup middleware as per Clerk documentation.

5. Add environment variable for app URL:

Add the following environment variable to the .env.local file:

NEXT_PUBLIC_URL=http://localhost:3000/

6. Run the Development Server:

npm run dev

7. Open Your Browser:

Open http://localhost:3000 to view the app.

Contributing

Contributions are welcome! Whether you want to report a bug, request a feature, or submit a pull request, please follow our contribution guidelines.

License

This project is licensed under the MIT License.

Resources