This app is a learning project GraphiQL of the "JavaScript/Front-End 2023Q1" course run by Rolling Scopes School. The purpose of this project is to master and deepen knowledge in JavaScript / Front-end, to apply this knowledge in practice when developing an GraphiQL application. Also, the goal of the project is to master modern tools and frameworks used in the development of web applications.
Project is created with:
We follow a high standard of code quality:
- All code changes go through the Code Review process. Before changes are accepted, they must be approved by at least two project participants.
- We provide at least 80% test coverage.
- We use Conventional Commits.
- We use Git Hooks to automate various processes when working with the repository:
pre-commit
: Executes before a commit is made. Runs linting and other checks to ensure that only clean and formatted code is committed.pre-push
: Executes before a push to a remote repository. Verifies the quality of the pushed code, running tests.commit-msg
: Executes after entering a commit message. Enforces Conventional Commits standards for commit messages.
- Clone this repository to local computer.
- Install all dependencies use
npm install
. - Create the project in Firebase. This is required to implement the authentication mechanism.
- Save your API environment variables file (.env) in the project directory (check out
.env.template
file). Read more here.
In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:5173 to view it in the browser.
The page will reload if you make edits.
Builds the app for production to the dist
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
Locally preview the production build. Do not use this as a production server as it's not designed for it.
Perform a single run of all test suites without watch mode.
Run all test suites but watch for changes and rerun tests when they change.
Perform a single run of all test suites without watch mode and generate a coverage report
Runs a scan on your codebase using ESLint. During the scan, ESLint examines your JavaScript code files to identify potential errors, coding conventions violations, and stylistic issues. It applies a set of predefined rules or rulesets to analyze your code, providing feedback on areas that need attention or improvement.
Run this script to make ESLint not only to identify potential errors and violations but also automatically to fix as many of these issues as possible. It applies automatic code transformations to resolve common problems and align your code with the configured ruleset.
This command is useful when you want to quickly fix common issues in your codebase without manually going through each reported problem.
Runs a scan on your codebase using the Stylelint. Stylelint is a linter specifically designed for checking and enforcing consistent CSS or SCSS code styles and conventions.
When you execute this command, Stylelint analyzes your CSS or SCSS files and provides feedback on any issues it finds. It checks for violations of formatting rules, naming conventions, selector usage, and other CSS-related best practices.
Stylelint helps you maintain a consistent and readable codebase by flagging potential errors, inconsistencies, and bad practices in your CSS or SCSS code. It can highlight issues such as missing semicolons, invalid property values, duplicate selectors, unused styles, and much more.
Run this script to make Stylelint not only to identify potential errors and violations but also automatically to fix as many of these issues as possible. It applies automatic code transformations to resolve common problems and align your code with the configured ruleset.
This command is useful when you want to quickly fix common issues in your codebase without manually going through each reported problem.
Runs a scan on your codebase using Prettier. Prettier analyzes the code files in the project and checks their formatting for compliance with the established rules. If the formatting does not comply with the rules, the command will generate appropriate errors or warnings.
Run this script to make Prettier not only to identify potential errors and violations but also automatically to fix as many of these issues as possible. It applies automatic code transformations to resolve common problems and align your code with the configured ruleset.
This command is useful when you want to quickly fix common issues in your codebase without manually going through each reported problem.
Runs on local npm install
without any arguments. This script runs husky install
, needed to add a command to a Git hook or create a new one.
This project initialized Husky to manage Git hooks, automating tasks such as linting checks and code formatting during the commit process.
To add a command to a hook or create a new one, use husky add <file> [cmd]
. More info here.
We would like to express our sincerest gratitude to the RS School for the incredible training program and courses you have provided us. We cannot emphasize enough how valuable this experience has been for our personal and professional growth.The dedication and expertise of the instructors have exceeded our expectations, and we are truly grateful for their passion and commitment to delivering high-quality education. The skills and knowledge we have acquired during this program will undoubtedly shape our future careers.