Go to file
Matthias Mair 5d1d8ec889
Refactor states/status (#4857)
* add file for states

* move general definition out

* add some tests and docs

* add tests for invalid definitions

* make status_label tag generic

* move templatetags

* remove unused tag

* rename test file

* make status label a lookup

* rename tags

* move import structure

* add missing tag

* collect states dynamically

* fix context function

* move api function out

* add tests for tags

* rename tests

* refactor imports

* Add test for API function

* improve errors and add tests for imporved errors

* make test calls simpler

* refactor definitions to use enums

* switch to enum

* refactor definitions to use enums

* fix lookup

* fix tag name

* make _TAG lookup a function

* cleanup BaseEnum

* make _TAG definition simpler

* restructure status codes to enum

* reduce LoC

* type status codes as int

* add specific function for template context

* Add definition for lookups

* fix filter lookup

* TEST: "fix" action lookup

* Add missing migrations

* Make all group code references explict

* change default on models to value

* switch to IntEnum

* move groups into a seperate class

* only request _TAG if it exsists

* use value and list

* use dedicated groups

* fix stock assigment

* fix order code

* more fixes

* fix borked change

* fix render lookup

* add group

* fix import

* fix syntax

* clenup

* fix migrations

* fix typo

* fix wrong value usage

* fix test

* remove group section

* remove group section

* add more test cases

* Add more docstring

* move choices out of migrations

* change import ordeR?

* last try before I revert

* Update part.migrations.0112

- Add custom migration class which handles errors

* Add unit test for migration

- Ensure that the new fields are added to the model

* Update reference to PR

---------

Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2023-06-09 10:27:26 +10:00
.devcontainer Docs/devcontainer (#4787) 2023-05-12 17:13:48 +10:00
.devops Add azure pipelines (#4453) 2023-04-03 16:55:27 +10:00
.github Improve devdocs (#4813) 2023-06-09 10:16:30 +10:00
.vscode Docs/devcontainer (#4787) 2023-05-12 17:13:48 +10:00
ci Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
contrib Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
deploy fix endline 2022-05-20 13:35:07 +02:00
docker Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
docs Improve devdocs (#4813) 2023-06-09 10:16:30 +10:00
images/logo Export large version of the logo 2020-05-12 00:06:26 +10:00
InvenTree Refactor states/status (#4857) 2023-06-09 10:27:26 +10:00
.djlintrc Replace mklint with djlint (#4746) 2023-05-02 20:03:52 +10:00
.eslintrc.yml Fix JS linting workflow (#4915) 2023-05-30 22:55:53 +10:00
.gitattributes fix endline 2022-05-20 13:35:07 +02:00
.gitignore Fix/settings bugs and added model SettingKeyType typing (#4944) 2023-06-01 23:53:06 +10:00
.pkgr.yml Add cli to package installs (#4274) 2023-01-29 12:39:27 +11:00
.pre-commit-config.yaml Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
backportrc.json Add workflow for backporting PRs (#4912) 2023-05-28 18:55:06 +10:00
CONTRIBUTING.md Improve devdocs (#4813) 2023-06-09 10:16:30 +10:00
crowdin.yml L10 merge (#1595) 2021-05-18 19:20:24 +10:00
docker-compose.yml Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
docker.dev.env update INVENTREE_LOG_LEVEL param (#4058) 2022-12-14 07:17:24 +11:00
Dockerfile Docker: Add pinwheels.org repo for armv7 architecture (#4598) 2023-04-11 15:23:36 +10:00
LICENSE Update LICENSE 2022-02-21 22:31:10 +11:00
package-lock.json Fix JS linting workflow (#4915) 2023-05-30 22:55:53 +10:00
package.json Fix JS linting workflow (#4915) 2023-05-30 22:55:53 +10:00
Procfile Improve cli experience (#4881) 2023-05-24 16:34:36 +10:00
README.md Add openssf badge (#4558) 2023-06-04 00:47:06 +10:00
readthedocs.yml Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
RELEASE.md Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
requirements-dev.in Slow tests (#4435) 2023-03-02 13:51:52 +11:00
requirements-dev.txt Bump cryptography from 40.0.1 to 41.0.0 (#4955) 2023-06-05 19:27:27 +10:00
requirements.in [FR] Switch from git to dulwich (#4966) 2023-06-05 19:27:46 +10:00
requirements.txt [FR] Switch from git to dulwich (#4966) 2023-06-05 19:27:46 +10:00
runtime.txt Add package-based install method (#3743) 2022-10-16 10:14:18 +11:00
SECURITY.md Spelling fix: dates -> days (#3193) 2022-06-14 10:07:48 +10:00
setup.cfg Code style improvements (#4683) 2023-04-28 20:49:53 +10:00
tasks.py Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00

InvenTree logo

InvenTree

Open Source Inventory Management System

License: MITGitHub tag (latest SemVer) CI Documentation Status Docker Build OpenSSF Best Practices

Coveralls Crowdin GitHub commit activity Docker Pulls

GitHub Org's stars Twitter Follow Subreddit subscribers

View Demo · Documentation · Report Bug · Request Feature

🌟 About the Project

InvenTree is an open-source Inventory Management System which provides powerful low-level stock control and part tracking. The core of the InvenTree system is a Python/Django database backend which provides an admin interface (web-based) and a REST API for interaction with external interfaces and applications.

InvenTree is designed to be lightweight and easy to use for SME or hobbyist applications, where many existing stock management solutions are bloated and cumbersome to use. Updating stock is a single-action process and does not require a complex system of work orders or stock transactions.

Powerful business logic works in the background to ensure that stock tracking history is maintained, and users have ready access to stock level information.

🎯 Features

  • Organize Parts and BOMs
  • Manage Suppliers
  • Instant Stock Knowledge
  • Extend and Customize to fit your usage

🧭 Roadmap

  • Plugins
  • Improved Importers
  • Custom Workflow Processes

🛠️ Integration

InvenTree is designed to be extensible, and provides multiple options for integration with external applications or addition of custom plugins:

👾 Tech Stack

Server
Database
Client
DevOps

🧰 Getting Started

Refer to the getting started guide for installation and setup instructions.

📱 Mobile App

InvenTree is supported by a companion mobile app which allows users access to stock control information and functionality.

🚋 Deploy

There are several options to deploy InvenTree.

Single line install - read the docs for supported distros and details about the function:

wget -qO install.sh https://get.inventree.org && bash install.sh

👋 Contributing

Contributions are welcomed and encouraged. Please help to make this project even better! Refer to the contribution page.

📜 Translation

Native language translation of the InvenTree web application is community contributed via crowdin. Contributions are welcomed and encouraged.

To contribute to the translation effort, navigate to the InvenTree crowdin project, create a free account, and start making translations suggestions for your language of choice!

💸 Sponsor

If you use InvenTree and find it to be useful, please consider making a donation toward its continued development.

Donate via PayPal

💎 Acknowledgements

We would like to acknowledge a few special projects:

Find a full list of used third-party libraries in our documentation.

This project is supported by:

⚠️ License

Distributed under the MIT License. See LICENSE.txt for more information.