GithubHelp home page GithubHelp logo

pooyagolchian / cashew-login Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 949 KB

Cashew Login with fake API

Home Page: https://cashew-login.netlify.app/

HTML 10.91% TypeScript 74.20% SCSS 0.14% JavaScript 14.39% Shell 0.36%

cashew-login's Introduction

Cashwe Auth (Login with MOCK API data)

This project has been developed with the last version of React.js and Redux (Redux toolkit).

  • React.js
  • Redux toolkit
  • Redux presist store
  • Typescript
  • Cypress for E2E
  • React testing library
  • Prettier, ESLint, Husky
  • Netlify and GithubAction for CI/CD automate testing
  • Use login mock data reqres.in

DEMO URL

Available Scripts

In the project directory, you can run:

yarn install

Install all the dependencies that are needed for developing.

yarn start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.

yarn test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

yarn cypress open

Cypress is a next-generation front-end testing tool built for the modern web. We address the key pain points developers and QA engineers face when testing modern applications. This command has been used to run the E2E test with Cypress. I have used cypress for E2E and mock data.

yarn build

  • This command builds the application for production.

yarn format

  • This command formats all files with Prettier.

SOLID

Regarding the S for SOLID I just tried to keep each function(component as a function as well) just be responsible for a single task. That's why I just created a separate component for every part and also keep it simple stupid.

Prettier

Using Prettier for opinionated code formatter. It will take care of the formatting for you. Prettier creates an abstract syntax tree from your code and uses it to write new code formatted according to a set of rules. In addition, I check pretty before every commit by adding a pre-commit hook. For more detail check package.json, husky section.

Husky

Modern native Git hooks made easy. Husky is used for git hook pre-commit to format all code with Prettier.

Test with React Testing Library

yarn test

Cypress E2E

yarn cypress open or yarn cypress run (run cypress in command line)


GitHub actions for automated testing

I have used GitHub actions for automated testing and run all Unit Test.

cashew-login's People

Contributors

pooyagolchian avatar

Stargazers

Roman avatar

Watchers

James Cloos 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.