Docs
Project Structure
Project Structure
Let's take a look at the project structure.
Project Structure
BuouAI boilerplate strictly follows the Next.js Project Structure. It's seamlessly integrated with NextAuth, Prisma, next-intl, Nextra, and Stripe.
├── node_modules
├── prisma
│ ├── db.sqlite # SQLite database file
│ └── schema.prisma # Prisma schema definition
├── public # project static file,like img,logo,etc
├── app # Application logic
│ ├── (auth) # NextAuth layout and page
│ ├── (dashboard) # Dashboard layout and page
| ├── (docs) # docs layout and page
│ ├── (marketing) # marketing layout and page
│ ├── (editor) # editor layout and page
│ ├── api # api route (service api)
├── assets # Assets not exposed to the public,like fonts
├── components # React components used on pages
├── config # BuouAI configuration folder
│ ├── dashboard # Configuration for dashboard mainNav,sidebarNav
│ ├── docs # Configuration for docs mainNav,sidebarNav
│ ├── marketing # Configuration for marketing mainNav,sidebarNav
│ ├── site # Configuration for BuouAI (site metadata, description, author, etc.)
│ ├── subscriptions # Configuration for subscriptions
├── lib # Libraries (session, paypal, cloudflare r2, stripe, subscriptions, etc.)
├── pages # Next.js pages
├── styles # Styling
├── types # Typings definition
├── env.mjs # Environment variables schema
├── middleware.ts # next-intl middleware (handles redirects and rewrites based on user locale)
├── .env.example # Example environment file
├── .eslintrc.cjs # ESLint configuration
├── .gitignore
├── next-sitemap.config.js # sitemap
├── next.config.mjs # Next.js, next-intl, and Nextra configuration
├── package.json
├── pnpm-lock.yaml # pnpm depedency
├── postcss.config.cjs
├── prettier.config.cjs
├── README.md
├── tailwind.config.ts # Tailwind configuration
└── tsconfig.json # TypeScript configuration