Skip to content

gerardormz98/receipts-crud-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Receipts CRUD

Receipts CRUD is a web SPA that allows a user to track their receipts. Users can enter the amount of the receipt, comments and choose the supplier of each one.

There are two roles in the app:

  • User: They have access to the Receipts and Profile pages. They can only create, edit, and update receipts.
  • Admin: They have access to the Receipts, Profile, Users and Catalogs pages. In addition to being able to handle receipts, admins can add, edit and delete users and suppliers.

Test credentials:

Admin role User Role
Email [email protected] [email protected]
Password 12345678 12345678

URL

https://receipts-crud.netlify.app/

Technologies and dependencies

  • React JS: Frontend library.
  • Heroku: The web app is hosted in Heroku servers.
  • Bootstrap 4.4: CSS framework for UI responsive design.
  • JQuery: JQuery was used to manually handle Bootstrap components.
  • MDB Datatable: MDB is a UI components kit. In this app, I used the Datatable component to show the data, which includes the search and pagination features out of the box.
  • Validation.js: This library was used to easily validate user inputs, having rules such as: is email, is numeric value, etc.
  • Axios: Axios was used to send requests to the web API and to easily handle promises.
  • Font Awesome: All the icons that you can find in the app belong to this CSS library.
  • Moment.js: This library was used to format the dates in some tables.

Rules and validations

  • All the fields are required.
  • Names and phones can be numbers or letters.
  • Phones are 10 characters max.
  • Admins can't edit nor delete their own user.
  • The user [email protected] can't be deleted as it is the main admin.
  • You can't register suppliers or users with an existing name.
  • Only admins have access to Users and Catalogs pages.
  • In order to reset the password, the user's email must be real because a password change email is sent by Firebase.
  • When deleting a supplier, all the receipts linked to that supplier ID will be deleted.

About

Simple CRUD app with user roles and permissions.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published