HomeLabHQ / expiration-tracker

App to track expiration dates

Home Page:https://homelabhq.github.io/expiration-tracker/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LinkedIn
TimeSpent Coverage Technical Debt Maintainability Rating Security Rating Duplicated Lines (%) Build Ruff

Expiration tracker

Table of Contents
  1. About The Project Demo
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing

About The Project

Main goal of this project is to allow users to track expiration dates of items(food/medication), and hopefully eliminate huge portions of wasted food/medications. Also as a bonus i get to dive into Typescript and Ant Design.

⬆️

Demo

To try this out access demo instance at Demo with credentials:

NOTE: Demo not persistent and destroyed on each deployment

email:test@example.com
password:Test12345

⬆️

Built With

Django React Redux Vite Antd

⬆️

DB schema

DB_schema

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Prerequisites

For local development you will need:

  • Python 3.11.0
  • Node 18.17.1
    • Yarn 1.22.19

Also strongly recommend using tools like nvm and pyenv for running specific versions of Python and Node for this project

NOTE: Additionally install poetry self add poetry-dotenv-plugin to auto load env variables in shell and run command

Installation

  1. Run make setup
  2. Initialize backend via make be_init
    • Creates superuser from .env variables
    • Run migrations

⬆️

Usage

There are 2 methods of usage:

  • Development environment
    • VScode debug config in you need to play around with debugger
    • Run make start. Please note that in this case you will manually need to add env variables.

Complete app to use

  • Launch docker stack docker compose up -d
  • Create superuser from .env docker exec -it api python manage.py createsuperuser --no-input
  • Access via http://hostip

⬆️

Roadmap

Overall project plans and tasks can be found here

Roadmap

⬆️

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

⬆️

About

App to track expiration dates

https://homelabhq.github.io/expiration-tracker/


Languages

Language:Python 49.4%Language:TypeScript 44.2%Language:Makefile 2.5%Language:Dockerfile 2.4%Language:Shell 0.8%Language:HTML 0.5%Language:Less 0.2%