diff --git a/README.rst b/README.rst deleted file mode 100644 index 738bbe4..0000000 --- a/README.rst +++ /dev/null @@ -1,10 +0,0 @@ - -## DB Hierarchy - -- Workshop - - Area - - Area - - Box - - Box - - ... - - Item \ No newline at end of file diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000..8222e5f --- /dev/null +++ b/Readme.md @@ -0,0 +1,45 @@ +## Small parts inventory management + +This project is a small parts inventory management system. It is thought out to +be a flexible parts database which keeps all relevant information as well as +datasheets, prices and a visual representation where you stored the part. + +The idea is that the system may tell you in which compartment of which box in +what area of your workshop you have to search for to find the part you +currently need. It has been optimized to store information for electronics +parts and small other hardware like screws, nuts and bolts. + +### Prerequisites + +As configured by default you will need the following: + +- A postgres database named `inventory` with a postgres user `inventory` that + may connect without password or by default with the password `inventory` +- Python > 3.7 +- Poetry to install requirements and create a virtualenv + +### Installation + +This is a standard Django 3.1 application, if you know how to deploy those the +following might sound familiar: + +1. Checkout repository: `git clone https://github.com/dunkelstern/inventory.git` +2. Change to checkout: `cd inventory` +3. Install virtualenv and dependencies: `poetry install` +4. Migrate the Database: `poetry run python manage.py migrate` +5. Create an admin user: `poetry run python manage.py createsuperuser` +6. Run the server + - Development server (not for deployment!): `poetry run python manage.py runserver` + - Deployment via `gunicorn` on port 8000: `poetry run gunicorn inventory_project.wsgi -b 0.0.0.0:8000` + +Then login on `http://localhost;8000/admin/` for the Django admin interface or +go to `http://localhost:8000` to enter the inventory management system directly + +### Additional information + +1. The initial DB migration pre-populates the database with some useful defaults + and some pre-defined distributors and form-factors usable for electronics + inventories as well as a "Default Workshop" to be able to navigate everything. +2. For editing parts the Django admin interface is used, so edit-links will only + appear if the currently logged in user is a `staff` user (set the checkbox + in the admin area). \ No newline at end of file