If you like this project then give it a Github star! 🤩⭐
Project which allows to search for trending repositories in GitHub
=================
The project was developed to allow the search of trending repositories in GitHub. It was structured to show the configuration of a React.js project using Husky, lint-staged, eslint, prettier and commitlint with conventional commits. The project also shows how to implement unit and integration tests with React Testing Library. Redux was used as state manager with Redux Toolkit and Redux Thunk for implementing asynchronous communication middlewares in order to consume the GitHub API.
Main screen | Main screen with the favorites filter activated |
Responsive main screen with language menu | Responsive main screen with text search |
Before starting, you need Node.js, Yarn and Git installed and configured.
# Clone this repository
$ git clone https://github.com/rafaelfl/gitrend
# Enter in the project folder in terminal/cmd
$ cd gitrend
After installing the tools and the source code, you can install the dependencies and run the project.
# Install dependencies
$ yarn install
# Run the project using the following syntax
$ yarn start
The application will be available on http://localhost:3000
.
Some interesting commands:
yarn build
- build the page for deployingyarn test
- run the unit and integration testsyarn test:cov
- run the tests and show the coverage reportyarn lint
- run the linter to identify some problems in codeyarn lint:fix
- run the linter to identify and fix problems in codeyarn prettier
- run the prettier formatter
Furthermore, the Husky is configured to verify commit messages incompatible with the "Conventional Commits" standard, as well as to run the linter and prettier in the code.
- TypeScript
- React.js
- Yarn
- Redux Toolkit
- Redux Thunk
- React Testing Library
- Mock Service Worker
- Husky
- eslint
- lint-staged
- prettier
- commitlint
Rafael Fernandes Lopes
Developed with 💜 by Rafael Fernandes Lopes