The project is a web resume for easy demonstration of the basic skills of a software engineer.
v4.9.0
npm install -g corepack@0.31.0
corepack enable
yarn installv20.9.0. Use NVM:
- nvm current - check current version of Node
- nvm list - show list of available Node versions
- nvm install - to install and use Node version.
- nvm use - set version of Node as current version
This project was bootstrapped with Create React App.
In the project directory, you can run:
Starts the application in development mode using react-app-rewired start.
Builds the application locally with an empty PUBLIC_URL.
Creates an optimized production build using react-app-rewired build.
Formats sources, runs lint checks and builds the project before deployment.
Deploys the contents of the build folder to GitHub Pages.
Serves the static files from the build directory.
Checks/updates available dependencies to the latest version.
Formats code using Prettier for TypeScript, TSX, and CSS, SCSS files.
Checks code format using Prettier for TypeScript, TSX, and CSS, SCSS files.
Runs ESLint for static code analysis on TypeScript and TSX files.
Fixes errors found by ESLint in TypeScript and TSX files.
Runs unit tests using the Jest configuration.
Runs unit tests with coverage calculation option.
Runs snapshot tests using the Jest configuration.
Runs snapshot tests with coverage calculation option.
Updates snap-data of snapshot tests.
Executes e2e tests (Playwright)
Sequentially executes unit tests, snapshot tests, integration tests, e2e tests.
Runs Storybook in development mode on port 6006.
Builds a static version of Storybook for deployment.
Runs Chromatic to check for visual changes in components and exits with a code 0 even if changes are detected.
Generates comprehensive documentation using TypeDoc.
Increments the major version in package.json and src/app/manifest.json.
For example, changes "version": "1.2.3" to "version": "2.0.0".
Increments the minor version in package.json and src/app/manifest.json.
For example, changes "version": "1.2.3" to "version": "1.3.0".
Increments the patch version in package.json and src/app/manifest.json.
For example, changes "version": "1.2.3" to "version": "1.2.4".
Automates the process of merging branches, increasing the major-version in the package.json file and manifest file, and committing the changes to the designated branch. This ensures the version is updated consistently and the changes are easily trackable in the repository.
Automates the process of merging branches, increasing the minor-version in the package.json file and manifest file, and committing the changes to the designated branch. This ensures the version is updated consistently and the changes are easily trackable in the repository.
Automates the process of merging branches, increasing the patch-version in the package.json file and manifest file, and committing the changes to the designated branch. This ensures the version is updated consistently and the changes are easily trackable in the repository.
Installs Playwright deps.
Automatically runs after dependencies installation to set up git hooks through husky.
-
run yarn update-version:patch (or :minor, :major)
-
create PR with message "[Common] Version increase vX.X.X" from "common/version-increase" into "develop"
-
create PR with message "[Testing] Release vX.X.X" from "develop" into "testing"
-
go to Vercel project, wait for the production server update to complete, go to the production site and make sure everything is working
-
create PR with message "Release vX.X.X" from "testing" into "main"
-
go to Vercel project, wait for the production server update to complete, go to the production site and make sure everything is working
-
go to Github Repo Home page -> Tags -> Releases -> Draft a new release.
a) create a new tag via "Choose a tag" autocomplete
b) select "develop" branch as a target
c) click the "Generate release notes" button, remove unnecessary notes if necessary, check PR messages and correct the messages if necessary (via PR editing)
d) select "main" branch as a target
e) click the "Publish release"
-
checkout "testing" and pull, then merge "main" into "testing" and push
-
checkout "develop" and pull, then merge "testing" into "develop" and push
-
update RELEASE-NOTES.md with using generated notes in step 7, create PR with from "common/release-notes-update-vX.X.X" to "develop" message "[Common] RELEASE-NOTES.md update vX.X.X"
Link to repository https://github.com/a1exevs/web-resume.
Link to project https://github.com/users/a1exevs/projects/1
