A modern Next.js starter template with TypeScript, Tailwind CSS, and more
- β‘οΈ Next.js 15 with App Router
- π¨ Tailwind CSS with Typography plugin
- π NextAuth.js (Auth.js) for authentication
- ποΈ Drizzle ORM with NeonDB integration
- π MDX support for content
- π Framer Motion for animations
- π Sonner for toast notifications
- π΅ use-sound for sound effects
- π¨ Akar Icons for beautiful icons
- π SEO optimized(with metadata and schema.org)
- π― TypeScript for type safety
- π§Ή ESLint + Prettier for code quality
- πΆ Husky for git pre commit
- π View transitions for smooth page navigation
βββ app/ # Next.js app directory
βββ components/ # React components
β βββ atoms/ # Basic UI components
β βββ ...
βββ hooks/ # Custom React hooks
βββ styles/ # Global styles
βββ utils/ # Utility functions
βββ public/ # Static assets
βββ assets/ # Project assets
βββ ...
not found pagepage to handle 404 routesconfig.tscontainer site information to be used for seo and schema.org dataseo.tsutil to generate SEO metadata and schema.orgmanifest.jsonfor site infoclassnamesutil for easily managing classescomponents/atoms/Button.tsxa button component with variantshooks/useClickOutsidehook to check if user clicked outside the elementhooks/useModalhook to create modals, which can close with eschooks/useDynamicHeight- Drizzle ORM for database(with NeonDB)
- NextAuth(or Auth.js) for Auth
- next-view-transitions - for page smooth transitions
- Tailwind CSS - for styling(with typography plugin)
- Framer Motion - for animations
- Akar Icons - library for rounded icons
- Sonner - for toast messages
- use-sound - for using sounds
- Class Variance Authority - for type-safely managing class names
- Clone the repository:
git clone https://github.com/nirnejak/nextjs-typescript-saas.git
cd nextjs-typescript-saas- Install dependencies:
bun install
- Copy the environment variables:
cp .env.example .env
-
Update the environment variables in
.envwith your configuration. -
Setup pre-commit hooks:
bun run prepare
- Start the development server:
bun run dev
Install Dependencies
bun install
Setup Pre-commit
bun run prepare
Start Development Server
bun run dev
Lint all the files
bun run lint
Format all files with Prettier
bun run format
Check TypeScript issues
bun run type-check
Generate Database Migrations
bun run db:generate
Run Database Migrations
bun run db:migrate
Push Database Migrations
bun run db:push
Start Database Admin
bun run db:studio
Build for Production
bun run build
Start Production Server
bun start
Update the config.ts file with your site's information:
const config = { baseUrl: "https://your-site.com", appName: "Your App Name", appDescription: "Your app description", creator: "Your Name", authorName: "Your Name", authorUrl: "Your URL or Email", keywords: ["your", "keywords"], twitterSite: "@your-site", twitterCreator: "@your-username", }
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Made with β€οΈ by Jitendra Nirnejak