Automatic Installation
$ npx [email protected] .
✔ Would you like to use TypeScript? … Yes
✔ Would you like to use ESLint? … Yes
✔ Would you like to use Tailwind CSS? … Yes
✔ Would you like to use `src/` directory? … No
✔ Would you like to use App Router? (recommended) … Yes
✔ Would you like to customize the default import alias (@/*)? … No
node -v > .nvmrc
Install Tailwind CSS with Next.js
npm install -D tailwindcss@3 postcss autoprefixer
Beautiful typographic defaults for HTML you don't control.
npm install -D @tailwindcss/typography
Run the init command to create a new Next.js project or to setup an existing one:
npx shadcn@latest init -d
Use the add command to add components and dependencies to your project.
npx shadcn@latest add -a
This will add/install all shadcn components (overwrite if present).
npx shadcn@latest add -a -y -o
Add tanstack/react-table
dependency:
npm install @tanstack/react-table
Add the Toaster component. Edit app/layout.tsx
:
import { Toaster } from '@/components/ui/sonner'
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html lang="en">
<body>
{children}
<Toaster richColors closeButton />
</body>
</html>
);
}
Installing Auth.js
npm install next-auth@beta
Setup Environment
npx auth secret
Installing Prisma Adapter
npm install @prisma/client @auth/prisma-adapter
npm install prisma --save-dev
npm install tsx --save-dev
If you're not using a Prisma Postgres database, you won't need the @prisma/extension-accelerate package.
npm install @prisma/extension-accelerate
Apply schema to database.
npx prisma migrate dev --name init
The easiest way to explore and manipulate your data in all of your Prisma projects.
npx prisma studio
Static file serving and directory listing
npm install --global serve
Edit .package.json
"scripts": {
"serve": "serve -l 4000 build/"
}
Run the script
npm run serve
Send e-mails with Node.JS.
npm install nodemailer
npm install --save-dev @types/nodemailer
Bear necessities for state management in React
npm i zustand
Powerful asynchronous state management, server-state utilities and data fetching for the web. TS/JS, React Query, Solid Query, Svelte Query and Vue Query.
npm i @tanstack/react-query
Share target browsers between different front-end tools, like Autoprefixer, Stylelint and babel-preset-env.
npm install browserslist
Edit package.json
:
{
"browserslist": [
"defaults and fully supports es6-module",
"maintained node versions"
],
}
Optimized bcrypt in plain JavaScript with zero dependencies.
npm i bcryptjs @types/bcryptjs
JWA, JWS, JWE, JWT, JWK, JWKS for Node.js, Browser, Cloudflare Workers, Deno, Bun, and other Web-interoperable runtimes.
npm i jose
Day.js 2kB immutable date-time library alternative to Moment.js with the same modern API.
npm i dayjs
Getting, setting and removing cookies on both client and server with next.js
npm i [email protected]
svg react icons of popular icon packs
npm i react-icons
A querystring parser with nesting support
npm i qs @types/qs
Logic behind CSRF token creation and verification.
npm i csrf
ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code.
npm install --save-dev eslint eslint-plugin-react eslint-plugin-react-hooks
npm install --save-dev eslint-plugin-import eslint-import-resolver-typescript
npm install --save-dev @typescript-eslint/parser @typescript-eslint/eslint-plugin
npm install --save-dev @next/eslint-plugin-next
Find and fix problems in your JavaScript code.
npx eslint ./app
npx eslint --fix ./{app,components,config,context,hooks,lib,queries,store,types}
Prettier is an opinionated code formatter.
npm install --save-dev prettier eslint-plugin-prettier eslint-config-prettier
npm install --save-dev eslint-plugin-tailwindcss prettier-plugin-tailwindcss
npm install --save-dev prettier-plugin-prisma
To format a file in-place.
npx prettier --check "./app/**/*.{ts,tsx}"
npx prettier --write "./{app,components,config,context,hooks,lib,queries,store,types}/**/*.{ts,tsx}"