Giter Site home page Giter Site logo

quotetracker's Introduction


Project license

Pull Requests welcome code with love by gscerveira

Table of Contents

About

This project aims to provide a simple way to keep track of quote requests for suppliers within whatever project you are working on. The user can create projects and add items to them, each item will belong to a store, and the user can keep track of the quote request status for the items with a simple drag-and-drop functionality.

The goal is to simplify the management of these requests, allowing the user to see clearly the status of each request, thus avoiding delays and missed steps in the process.

Screenshots

[?] Please provide your screenshots here.

Login/Register Page Dashboard Page

Built With

The back-end of this project consists of a REST API, built with the Django Rest Framework, it provides three endpoints (projects, stores, and items) for controlling the quote requests' status and three endpoints (login, logout and register) for user authentication, which is handled by Django's session authentication system.

The front-end is built with React.js, and it consists of two pages, one for login/registration and another with a dashboard for managing the projects and quote requests. The front-end consumes the API through Axios. The UI is built using MUI (Material UI) components.

In order to avoid CORS issues, Nginx was used to route both the front-end and the back-end through the same domain.

The project is containerized with Docker, and the containers are managed with Docker Compose, in order to keep a consistent development environment and to facilitate deployment. For development, there are four containers (front-end, back-end, database, and Nginx), and for production, there are three (front-end, back-end, and Nginx).

The app is hosted on AWS, deployed by pulling the Docker images from Docker Hub and running them on an EC2 instance. The database (PostgreSQL) is hosted on RDS.

A simple Github Actions workflow is in place, which runs tests (Pytest) on the API's endpoints before merging a pull request to the main branch.

For API Schema generation, Swagger is used, with the help of the DRF-Spectacular package. The Swagger UI can be accessed here.

Usage

To access and use the app, you can visit the live demo.

Authors & contributors

The original setup of this repository is by Gabriel Cerveira.

For a full list of all authors and contributors, see the contributors page.

Security

Quote Request Tracker follows good practices of security, but 100% security cannot be assured. Quote Request Tracker is provided "as is" without any warranty. Use at your own risk.

License

This project is licensed under the MIT license.

See LICENSE for more information.

quotetracker's People

Contributors

gscerveira avatar

Watchers

 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.