Coder Social home page Coder Social logo

remcolakens / next-boilerplate Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 1.0 1.28 MB

Easy to use front-end boilerplate to start developing your Next.js application right away ๐Ÿ’ฏ

Home Page: https://boilerplate.remcolakens.nl

License: MIT License

JavaScript 9.53% TypeScript 90.04% CSS 0.43%
boilerplate nextjs react typescript

next-boilerplate's Introduction

Remco's Next.js Boilerplate

Easy to use front-end boilerplate to start developing your Next.js application right away ๐Ÿ’ฏ

Learn More


Highlights

  • Features all of the benefits of Next.js
  • Typescript support
  • Blazing fast package manager
  • Lint your code with husky & lint-staged
  • Normalizes default browser styles
  • Automatically formats your code by using Prettier
  • JavaScript Testing Framework
  • Friendly errors & warnings
  • Automated releases with semantic-release and Github Actions
  • Includes Tailwind CSS & shadcn/ui to quickly build user-friendly interfaces
  • Automatically optimizes all your SVGs

File Tree

โ”œโ”€โ”€ .github                   # Workflows for Github Actions
โ”œโ”€โ”€ .husky                    # Git hooks
โ”œโ”€โ”€ app                       # Pages folder
โ”œโ”€โ”€ __tests__                 # Test folder
โ”‚   โ””โ”€โ”€ __snapshots__         # Snapshot folder
โ”‚       โ””โ”€โ”€ snapshot.tsx.snap # The saved snapshots
โ”‚   โ””โ”€โ”€ index.test.tsx        # Sample test file
โ”‚   โ”œโ”€โ”€ components            # Components folder
โ”‚   โ”œโ”€โ”€ lib                   # Library folder
โ”‚   โ”œโ”€โ”€ svgs                  # SVG folder
โ”‚   โ”œโ”€โ”€ favicon.ico           # The favicon
โ”‚   โ”œโ”€โ”€ globals.css           # The main css file to configure globals such a tailwind
โ”‚   โ”œโ”€โ”€ layout.tsx            # The main layout files
โ”‚   โ””โ”€โ”€ page.tsx              # Sample page
โ”œโ”€โ”€ docs                      # Documentation
โ”‚   โ””โ”€โ”€ CHANGELOG.md          # the changelog
โ”‚   โ””โ”€โ”€ ci.md                 # docs for CI
โ”‚   โ””โ”€โ”€ commit-convention.md  # docs for commit convention
โ”œโ”€โ”€ public                    # Folder for static assets
โ”œโ”€โ”€ .commitlintrc             # commitlint config (package)
โ”œโ”€โ”€ .czrc                     # Config to commitizen
โ”œโ”€โ”€ .editorconfig             # Config to normalize editors
โ”œโ”€โ”€ .env.example              # Example file with required .env variables
โ”œโ”€โ”€ .eslintrc                 # Eslint config
โ”œโ”€โ”€ .gitignore                # Files that will be ignored by git
โ”œโ”€โ”€ .lintstagedrc.js          # Config file for "lint-staged" (package)
โ”œโ”€โ”€ .nvmrc                    # Compatible node version
โ”œโ”€โ”€ .prettierignore           # Files that will be ignored by Prettier (package)
โ”œโ”€โ”€ .prettierrc               # Prettier config (package)
โ”œโ”€โ”€ .releaserc                # semantic-release config
โ”œโ”€โ”€ .svgrrc                   # config for SVGR
โ”œโ”€โ”€  CODE_OF_CONDUCT          # the CODE OF CONDUCT
โ”œโ”€โ”€  jest.config.js           # Config file for jest
โ”œโ”€โ”€  jest.setup.js            # Used for __tests__/testing-library.js
โ”œโ”€โ”€  LICENSE                  # License information
โ”œโ”€โ”€  next-env.d.ts            # Next.js Typescript declaration file (leave unchanged)
โ”œโ”€โ”€  package.json             # The package.json of this project
โ”œโ”€โ”€  pnpm-lock.yaml           # Lock file for packages (leave unchanged)
โ”œโ”€โ”€  postcss.config.js        # the postcss config file
โ”œโ”€โ”€  README.md                # README documentation
โ”œโ”€โ”€  tailwind.config.ts       # the tailwind css config
โ””โ”€โ”€  tsconfig.json            # Typescript config

Usage

For new projects you should be using pnpm as your package manager. It has some advantages over yarn and npm but it's main purpose is to be a fast and disk space efficient.

If you are new to pnpm you need to install it on your local machine, afterwards you can follow the instructions below.

# Install dependencies

pnpm install

# Install playwright for end-to-end tests

pnpm exec playwright install --with-deps

# Start local webserver at port 3000

pnpm dev

# Run linters

pnpm lint

# Run unit tests

pnpm test

# Run end-to-end tests

pnpm test:e2e

# Build app for production (gets output in the 'dist' directory)

pnpm build

# Start production server

pnpm start

Learn More

To learn more about Next.js and the other tools, take a look at the following resources:

  • Next.js Documentation - learn about Next.js features and API.
  • Typescript - Introduction to TypeScript
  • pnpm - Fast, disk space efficient package manager
  • Tailwind CSS - A utility-first CSS framework packed with classes that can be composed to build any design, directly in your markup.
  • Eslint - Find and fix problems in your JavaScript code.
  • Prettier - Prettier is an opinionated code formatter.
  • Jest - Jest is a delightful JavaScript Testing Framework with a focus on simplicity.
  • React Testing Library - Simple and complete testing utilities that encourage good testing practices
  • Conventional Commits - A specification for adding human and machine readable meaning to commit messages
  • semantic-release - Fully automated version management and package publishing

Deploy

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Deploy with Vercel

Documentation

  • CHANGELOG - Changelog with all notable changes made to a project
  • CI - Short explanation of the continuous integration process
  • Commit Convention - Short introduction of the commit convention

Todo

  • Write README.md
  • Add UI Library e.g. Chakra UI
  • Add React Testing Library
  • Add automated releases
  • Add more examples

License

MIT

next-boilerplate's People

Contributors

remcolakens avatar renovate[bot] avatar semantic-release-bot avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

zahramirzaei

next-boilerplate's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

github-actions
.github/actions/setup/action.yml
  • actions/setup-node v4
.github/workflows/ci.yml
  • actions/checkout v4
  • actions/checkout v4
  • actions/checkout v4
.github/workflows/playwright.yml
  • patrickedqvist/wait-for-vercel-preview v1.3.1
  • actions/checkout v4
.github/workflows/pr.yml
  • amannn/action-semantic-pull-request v5
.github/workflows/release.yml
  • actions/checkout v4
npm
package.json
  • class-variance-authority ^0.7.0
  • clsx ^2.1.1
  • lucide-react ^0.395.0
  • next ^14.2.4
  • react-dom ^18.3.1
  • react-use ^17.5.0
  • tailwind-merge ^2.3.0
  • tailwindcss-animate ^1.0.7
  • @commitlint/cli ^19.3.0
  • @commitlint/config-conventional ^19.2.2
  • @commitlint/cz-commitlint ^19.2.0
  • @playwright/test ^1.44.1
  • @remcolakens/simple-component-generator ^1.0.5
  • @semantic-release/changelog ^6.0.3
  • @semantic-release/git ^10.0.1
  • @svgr/cli ^8.1.0
  • @testing-library/jest-dom ^6.4.6
  • @testing-library/react ^16.0.0
  • @testing-library/user-event ^14.5.2
  • @types/jest 29.5.12
  • @types/node ^20.14.2
  • @types/react ^18.3.3
  • @types/react-dom ^18.3.0
  • @typescript-eslint/eslint-plugin ^7.13.0
  • @typescript-eslint/parser ^7.13.0
  • autoprefixer ^10.4.19
  • babel-jest ^29.7.0
  • commitizen ^4.3.0
  • eslint ^8.57.0
  • eslint-config-next ^14.2.4
  • eslint-config-prettier ^9.1.0
  • eslint-plugin-prettier 5.1.3
  • eslint-plugin-react ^7.34.2
  • eslint-plugin-tailwindcss ^3.17.3
  • eslint-plugin-testing-library ^6.2.2
  • husky ^9.0.11
  • inquirer 9.2.23
  • jest ^29.7.0
  • jest-environment-jsdom ^29.7.0
  • lint-staged ^15.2.7
  • postcss ^8.4.38
  • prettier ^3.3.2
  • prettier-plugin-organize-imports ^3.2.4
  • prettier-plugin-tailwindcss ^0.6.4
  • rimraf ^5.0.7
  • semantic-release ^23.1.1
  • shadcn-ui ^0.8.0
  • tailwindcss ^3.4.4
  • typescript ^5.4.5
  • pnpm 9.3.0
nvm
.nvmrc

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.