/invoice-app

Web App for Creating Invoices

Primary LanguageTypeScript

🚀 Getting Started

  1. Make a copy of .env.example and rename to .env.local

  2. Run the Invoice Rest API

  3. Run the following

npm run dev
# or
yarn dev
  1. Open http://localhost:3000 with your browser to see the result.

🧪 Testing

Cypress e2e

Open Cypress

npm run cypress

Run the following to save results

npx cypress run --spec cypress/e2e/auth/onboarding.cy.js --record --key 418a52e9-ea43-4374-b165-47f1f20282d5 cypress

Jest snapshot

npm run jest

📚 Tech Stack

✔️ React

✔️ TypeScript

✔️ NextJS

✔️ React Query Global Server State

  • Mutations
  • Syncing State

✔️ Zustand Immutable Global State

  • Auth State
  • Alert Toast State

✔️ GraphQL

  • Clients API
  • Add Clients API

✔️ Jest Snapshot Testing

  • FillTable
  • InvoiceForm
  • TableDataHeader
  • TableRowStatus

✔️ Cypress E2E Testing

  • add invoice
  • invoices table
  • clients table
  • login ( forked from Vlad )
  • onboarding ( forked from Vlad )
  • signup ( forked from Vlad )
  • add & edit client ( forked from Vlad )
  • dashboard ( forked from Vlad )

🎆 Thank You! 🎆

Thank you Vlad for all the lessons! And thank you everyone who was involved.