flask-psi

by betterlife

GitHub Readme.md

Betterlife Intelligent PSI Travis (.org) Code Coverage

Intelligent PSI(Purchase, Sales and Inventory) management system

GitHub Code Health Requires.io commits since release Release PyPI

Try to answer some questions like

  • Which product generates the most revenue/profit in my store and what's the data?
  • When do I need to replenish the stock and how much do I lost if that's not done?
  • What is the optimized quantity/date for replenish the stock?

Install & Run & Deploy

  • Run using Docker (Recommend)

    • Make sure docker is installed and configured correctly.
    • Clone the code via git clone https://github.com/betterlife/betterlifepsi.git
    • cd betterlifepsi && docker-compose build && docker-compose up to build and run the docker image
    • Please notice the database data is mounted to a docker volume called psi_data by default.
  • Install and run locally

    • Clone the code via git clone https://github.com/betterlife/betterlifepsi.git
    • pip install -r requirements.txt to install runtime dependencies.
    • pip install -r etc/requirements/test.txt to install development dependencies.
    • Create postgresql database and user for the application.
    • Set follow environment variables:
      • DATABASE_URL : Database URL, only postgresql is tested as of now.
      • FLASK_APP: Should be set to psi.cli:application
      • SECURITY_PASSWORD_SALT : password salt for password generation
      • SECRET_KEY : secret key for password generation
      • CLOUDINARY_URL : Cloudinary URL if use cloudinary to store image attachments
      • SENTRY_DSN : Sentry DSN if use sentry to handle exceptions
    • flask run to run the application
    • Set environment variable TEST_DATABASE_URL and invoke flask test to run tests.
  • Install and run on heroku

    • Click button Deploy to deploy current version to heroku.

Links

License

Betterlife PSI uses MIT License