Go to file
Oliver b50a6826ef
Builtin plugins (#3889)
* Allow loading of "builtin" plugins, even if "plugins" are not explicitly loaded

* Updates for 'admin' buttons:

- Make them work like proper links
- Hidden if 'hide_admin_link' customization option is set
- Check for user staff status

* Cleanup rendering of "plugins" display

* Consolidate InvenTree barcode plugins into single plugin class

* Hide "install plugin" button if plugins are not enabled

* Add info message is external plugins are not enabled

* Fixes for loading plugins

- Always load 'builtin' plugins
- Refactor calls to "is_active" at various points in codebase

* Various tweaks

- Improve builtin plugin descriptions
- Spelling fixes

* Adjust plugin detail for builtin plugins

* Simplify barcode plugin class

* Simplify template rendering

* Bug fix for inventree barcode plugin

* Revert "Simplify template rendering"

This reverts commit 3a6755a659.

* Re-re-improve template rendering

- Required as the template has been refactored for both "active" and "inactive" plugins

* Fixing unit tests for barcode plugin

* Ensure that barcode scan actions do not take a "long time":

- Add a default timeout of 0.1s to any POST or GET request in the testing framework
- Can be overridden by calling method if desired

* Display plugin "builtin" status in admin panel

* Fix unit tests for plugin API

* Further unit testing fixes

* Version number tweaks

* Further tweaks for unit testing

* Allow longer timeout for report printing via API

* Increase default timeout for API tests

- Sometimes CPU spike can cause the test to fail :|

* label printing can take a bit longer

* Remove timeout requirement from API tester

- Too variable to be reliable for CI
2022-11-05 01:05:54 +11:00
.devcontainer Add db an media backups (#3783) 2022-10-17 00:09:31 +11:00
.github Workflow fix (#3830) 2022-10-22 12:45:50 +11:00
.vscode vscode devcontainer (#3474) 2022-08-09 16:06:32 +10:00
ci Improvements to version check CI script (#3455) 2022-08-02 12:11:07 +10:00
contrib Add db an media backups (#3783) 2022-10-17 00:09:31 +11:00
deploy fix endline 2022-05-20 13:35:07 +02:00
docker re-enable plugins by default for debug docker environment (#3894) 2022-11-02 09:51:36 +11:00
images/logo Export large version of the logo 2020-05-12 00:06:26 +10:00
InvenTree Builtin plugins (#3889) 2022-11-05 01:05:54 +11:00
.eslintrc.yml lots of linting fixes for JS files 2021-09-03 22:54:17 +10:00
.gitattributes fix endline 2022-05-20 13:35:07 +02:00
.gitignore vscode devcontainer (#3474) 2022-08-09 16:06:32 +10:00
.gitpod.yml Add db an media backups (#3783) 2022-10-17 00:09:31 +11:00
.pkgr.yml Add db an media backups (#3783) 2022-10-17 00:09:31 +11:00
.pre-commit-config.yaml update pre-commit (#3744) 2022-10-06 22:32:01 +11:00
CONTRIBUTING.md Update issue templates to GH forms (#3495) 2022-08-08 11:12:52 +10:00
crowdin.yml L10 merge (#1595) 2021-05-18 19:20:24 +10:00
docker-compose.yml Fix for docker-compose v1 (#3434) 2022-07-30 11:43:15 +10:00
docker.dev.env re-enable plugins by default for debug docker environment (#3894) 2022-11-02 09:51:36 +11:00
Dockerfile Add postgresql-client to docker image (#3802) 2022-10-17 14:50:05 +11:00
LICENSE Update LICENSE 2022-02-21 22:31:10 +11:00
package-lock.json add packagelock 2021-12-03 01:11:04 +01:00
package.json prefix version in package 2021-12-02 11:33:02 +01:00
Procfile Add package-based install method (#3743) 2022-10-16 10:14:18 +11:00
README.md Add packager.io to devops section (#3840) 2022-10-24 09:48:59 +11:00
RELEASE.md Include 'default' value in OPTIONS request for any fields with specified default values 2021-06-27 21:44:21 +10:00
requirements-dev.in Requirements fix (#3280) 2022-07-02 21:01:01 +10:00
requirements-dev.txt Update deps to newest releases (#3782) 2022-10-13 11:07:06 +11:00
requirements.in Add db an media backups (#3783) 2022-10-17 00:09:31 +11:00
requirements.txt Add db an media backups (#3783) 2022-10-17 00:09:31 +11: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 Add more checks to pre-commit (#3132) 2022-06-06 08:56:52 +10:00
tasks.py Add db an media backups (#3783) 2022-10-17 00:09:31 +11:00

InvenTree logo

InvenTree

Open Source Inventory Management System

License: MITGitHub tag (latest SemVer) CI Docker Build

Coveralls Crowdin Lines of code 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:

curl https://raw.githubusercontent.com/InvenTree/InvenTree/master/contrib/install.sh | sh

👋 Contributing

Contributions are welcomed and encouraged. Please help to make this project even better! Refer to the contribution page in the docs and check out contributing.md.

📜 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.

⚠️ License

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