Skip to content
/ vrttv-boilerplate Public template

Avoid setting up a project from scratch. Start using VRTTV ๐ŸŽ‰

License

Notifications You must be signed in to change notification settings

Drumpy/vrttv-boilerplate

Repository files navigation

VRTTV Banner

VRTTV Boilerplate

Avoid setting up a project from scratch. Start using VRTTV ๐ŸŽ‰

View Demo ยท Report Bug ยท Request Feature

๐Ÿค” Whatโ€™s this?

Are you tired of always creating the same structure from scratch for your projects? Me too. ๐Ÿฅฑ

This is my go-to when I start a new project on front-end development.

If you found it useful somehow, I would be grateful if you could leave a star in the project's GitHub repository ๐Ÿ’š

(back to top)

๐Ÿ”ฎ Whatโ€™s inside?

  • โšก Vite - Next generation frontend tooling.
    • ๐Ÿ“ฆ Imagemin - Plugin for compressing image assets.
    • ๐Ÿ“ฆ Vite Plugin HTML - Plugin for processing HTML with minify.
  • ๐ŸŒŸ React - A JavaScript library for building user interfaces.
  • ๐Ÿ”€ React Router - Declarative routing for React apps at any scale.
  • ๐Ÿ’œ TypeScript - A superset of JavaScript.
  • ๐ŸŽจ Tailwind - A utility-first CSS framework.
  • โš™๏ธ Babel with preset-env - The compiler for next generation JavaScript.
  • ๐Ÿ’… Prettier - Opinionated Code Formatter.
  • ๐Ÿ” ESLint - Tool for identifying and reporting on patterns found in ECMAScript/JavaScript code.
    • ๐Ÿ“ฆ Simple Import Sort - Easy autofixable import sorting.
    • ๐Ÿ“ฆ Import Plugin - Rules that help validate proper imports.
    • ๐Ÿ“ฆ Tailwind Plugin - Plugin for Tailwind CSS usage.
    • And a few other ES2015+ related rules.
  • ๐Ÿถ Husky - Git hooks made easy.
    • ๐Ÿช commit-msg
    • ๐Ÿช pre-commit
  • ๐Ÿšซ Lint Staged - Run linters on git staged files.
  • โœ๏ธ Conventional Commits with ๐ŸŽ‰ Gitmoji - A specification for adding human and machine readable meaning to commit messages.
  • ๐Ÿšฆ GitHub Actions - Automate your workflow on GitHub.
  • ๐Ÿ”บ Vercel - Deploy your application on Vercel.

(back to top)

๐Ÿš€ Getting Started

These are the necessary steps to use ๐Ÿ’ฏ of the potential of this boilerplate.

๐Ÿšจ Prerequisites

You need this technologies :

๐Ÿ’ป Run Locally

  1. Option 1: Generate a new repository with this template
  1. Option 2: Copy just the project scaffolding.
npx --yes degit Drumpy/vrttv-boilerplate your-folder-name
  1. Option 3: Clone the entire repository.
git clone https://github.com/Drumpy/vrttv-boilerplate
  1. Go to the project directory.
cd vrttv-boilerplate
  1. Install dependencies.
npm install
  1. Start the server.
npm run dev

(back to top)

โš™๏ธ Setup GitHub Actions

  1. Run Vercel CLI in your project folder. After completed, a folder .vercel is created in your root directory.
vercel --confirm
  1. Go to actions secrets in your GitHub Repository.
https://github.com/your-username/your-repo-name/settings/secrets/actions/new
  1. Add this three tokens.
# Generate this in https://vercel.com/account/tokens
VERCEL_TOKEN
# It is located in 'project.json' inside the '.vercel' folder
ORG_ID
# It is located in 'project.json' inside the '.vercel' folder
PROJECT_ID

๐Ÿ’ก Tip!

You can skip GitHub Action execution by adding [skip ci] to your commit message.

style: change the colors of the theme [skip ci]

(back to top)

๐Ÿ•โ€๐Ÿฆบ Setup Husky

  1. Run Husky command.
npx --yes husky install
  1. Use Gitmoji CLI to commit changes.
gitmoji -c
  1. Write your commits following the rules of Conventional Commit. Examples:
feat: added navbar component
fix(navbar): fixed all the broken links

๐Ÿ‘‡ Creating a commit as an example

๐Ÿ“œ Conventional Commit Rules

Use this table as a reference when writing commits. Husky will be in charge of checking that the rules will be followed.

Commit Type Title Description Emoji
feat Features A new feature โœจ
fix Bug Fixes A bug fix ๐Ÿ›
docs Documentation Documentation only changes ๐Ÿ“
style Styles Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc) ๐ŸŽจ
refactor Code Refactoring A code change that neither fixes a bug nor adds a feature โ™ป๏ธ
perf Performance Improvements A code change that improves performance โšก
test Tests Adding missing tests or correcting existing tests โœ…
build Builds Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm) ๐Ÿšจ
ci Continuous Integrations Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs) ๐Ÿ‘ท
chore Chores Other changes that don't modify src or test files โž•
revert Reverts Reverts a previous commit โช

(back to top)

โ™พ๏ธ GitHub Actions Deployment Pipeline

  • ๐Ÿ›‘ Cancel Previous Redundant Builds
  • ๐Ÿ“ Assign PR to creator
  • ๐Ÿ’…๐Ÿผ Linting
  • ๐Ÿ”— Deploy to Vercel

(back to top)

๐Ÿ“ง Contact

Diego Do Santos - ddosantos@hotmail.com

(back to top)