Giter Club home page Giter Club logo

app-github-api's Introduction

Just testing Github public API

This test consists of a page with 2 major components: one to search data in the Github API and another to render the result.

Demo

https://cesar-oliveira-web.vercel.app/

What was used

  • React - Because it's interface library I have more knowledge/experience.
  • Gatsby - To generate static files and serve it as a SSG application. I choose this approach because it would be a simple page and I would like it to be fast.
  • TypeScript - To type the code.
  • React Context - To create a "store" and feed any component in application without cascade props manually.
  • React Hooks - To be more simple and create a stateless environment.
  • SASS - As a styles pre-processor.
  • react-hook-form - To abstract form states for me. I could do it manually, but RHF it's a lightweight and very simple library, so worth it.
  • react-toastify - To show the error message. Only because it's simple and pretty.
  • react-helmet - To do some interactions in the browser tab.
  • Jest - To run my tests pipeline and create some unit tests.
  • Testing Library - To have more possibilities when testing the UI.
  • Cypress - To create a E2E test
  • GitHub Actions - To run the tests automatically when updating main or opening new PR.
  • Vercel - To deploy and serve.

Getting started

Run:

yarn
yarn start

This will start application in development mode.

Build and serve:

yarn build
yarn serve

This will generate static files and serve in a local server.

Run the tests: The tests pipeline will be triggered automatically when you push the branch main in GitHub. But it's also possible to run them locally.

Unit and component tests:

yarn test:jest

E2E test:

test:cypress

Extra: Check the tests coverage:

yarn coverage

How to deploy new version: Just push in the branch main.

app-github-api's People

Contributors

cesarolvr avatar

Stargazers

 avatar Tim Fontes avatar Rodrigo Reis avatar Victor Fellype avatar Luan Bitar avatar

Watchers

pmurashov avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.