Vice Media Group Portforlio
Live url: https://vice-2ef34.web.app/
NextJS + React + Typescript + Tailwind CSS + ESLint + Prettier + Husky + Jest + jest-dom (React Testing Library) + Cypress
Initial setup:
-
Install the node.js https://nodejs.org/en/download/
-
Install the latest version of pnpm package manager
npm install -g pnpm
orbrew install pnpm
-
Install the dependencies
pnpm install && pnpm pre-commit:install
Running
pnpm dev
Production build
pnpm build
To run the server with the production build:
pnpm start
Testing
Live mode
pnpm test
E2E tests
pnpm e2e
Pre-commit checks
pnpm pre-commit
Google Firebase:
Deploying toLogin:
firebase login
Deploy hosting and functions:
firebase deploy
Design decisions
- NextJS - React frameworks with Server Side Rendering and a lot of other features
- Google Firebase - The database and hosting from Google
- Tailwind CSS + PostCSS for tree-shakable utility classes and minimum amount of hand-written CSS
- ESLint + Prettier for linting and prettifying the codeHusky for pre-commit hooks
- Jest - Testing Framework with a focus on simplicity.
- Cypress + Cypress Testing Library for the end-to-end testing