https://github.com/brunoocastro/nextjs-base
A base NextJS project for new projects
https://github.com/brunoocastro/nextjs-base
frontend nextjs react reactjs web
Last synced: about 1 month ago
JSON representation
A base NextJS project for new projects
- Host: GitHub
- URL: https://github.com/brunoocastro/nextjs-base
- Owner: brunoocastro
- Created: 2023-03-06T20:54:21.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-07-12T21:16:24.000Z (almost 3 years ago)
- Last Synced: 2025-01-24T16:16:29.851Z (over 1 year ago)
- Topics: frontend, nextjs, react, reactjs, web
- Language: TypeScript
- Homepage:
- Size: 121 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: changelog/07-12-2023.md
Awesome Lists containing this project
README
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
## Getting Started
First, run the development server:
```bash
npm run dev
# or
yarn dev
# or
pnpm dev
```
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`.
The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages.
This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
## Decisions
- We gonna use the composite pattern for our components, it will make our project most customizable and keep maintainable;
- To implement some components, like modals, we gonna use Radix UI because it's already accessible and ready to use;
- To validate our data we gonna use the ZOD library, it has good integration with typescript and made our forms so powerful;
- To handle toasts, we gonna use react-hot-toast
- For icons, we gonna use Lucide React
- We gonna use TailwindCSS