D-Freitas / clean-next-js

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub GitHub repo size GitHub Repo stars

Boilerplate Complete and updated with Next.js, Typescript, SASS, Tests and more


πŸ“ About the Project

This application is a boilerplate for complex and large systems, especially those that need to scale with security and code quality.

We sought to achieve 3 pillars: readability, reusability, and refactorability.

In the construction of the UI, the Atomic Design structure was chosen, organizing the global components into atoms, molecules, organisms and templates.

In addition to being constantly updated, this project was configured in the smallest details to serve as a basis for professional projects that require standardized and easy-to-maintain code architecture and design.



πŸ“Œ Contents



🌐 Technologies

βš› Next.js

πŸ”₯ TypeScript

πŸ’… SASS

🚩 Lints: Husky, ESlint, Stylelint, Commitlint, Lint-Staged, Prettier and Typecheck

βœ… Jest

πŸ™ React Testing Library



🚩 Features

  • Responsive design;

  • Atomic Design;

  • 100% coverage;

  • Detection prefers-reduced-motion;



βœ… Prerequisites

  • node (latest version lts)

  • yarn



❓ How to install and run the project

Clone Repository

git clone https://github.com/everton-dgn/boilerplate_nextjs_app.git

Install Dependencies

yarn

Start Development Environment

yarn dev

Available in http://localhost:3000

Generate Production Build

yarn build

Start Production Environment

yarn start

Available in http://localhost:3000

Run Tests

yarn test

Run Tests in Watch Mode

yarn test:w

Available in http://localhost:6006

Run Lints

yarn lint
yarn next:lint
yarn typecheck
yarn check-format

Format code with prettier

yarn format

Check for Available Updates for Dependencies

yarn check-update


🚨 Important Considerations

  • The husky is configured to not allow commit if there are any lint and typescript errors. The push can only be done if all tests and builds (of the project and the storybook) pass.

  • Due to husky's build check settings, to push with git, the development server must be stopped first or an error will occur in the git push command.


πŸ§‘β€πŸ’» Author

By Γ‰verton Toffanetto.

πŸ”— LinkedIn: https://www.linkedin.com/in/everton-toffanetto

πŸ”— YouTube: https://youtube.com/@toffanettodev

About

License:MIT License


Languages

Language:TypeScript 80.9%Language:JavaScript 15.0%Language:Shell 4.1%