Go to file
Matthias Mair 0c2f1cceb6
Add API change detection (#6440)
* Add basic task for generating apidocs

* Fix SPECTACTULAR_SETTINGS

- Some provided options were not correct

* Update .gitignore

* Fix for duplicated API path

- `/api/plugins/activate` routed to PluginActivate view
- Must be associated with a specific plugin ID

* By default, fail if warnings are raised

* Use GenericAPIView for GetAuthToken

* Use GenericAPIView for RolesDetail endpoint

* Refactor more endpoints to use GenericApiView

* More API cleanup

* Add extra type hints for exposed methods

* Update RoleDetails endpoint

- Specify serializer
- Use RetrieveAPI class type

* More type hints

* Export API docs as part of CI

* add more api views docs

* even more docs

* extend tests to api-version

* simplify serializer

* and more docs

* fix serializer

* added more API docs

* clean diff

* Added APISearch base

* do not assume you know the user
he might be anonymously creating the schema ;-)

* set empty serializer where no input is needed

* Use dummy model for schema generation

* fix OpenAPI docs section

* only run if needed

* remove schema task

* Add version check

* pin version

* fix QC order

* fix assign

* refactor order

* optimize compile times

* fix assign

* onyl use install

* more fixing

* use full update cycle

* revert python change

* use api_version

* run py

* why?

* clean up output

* only check for api version diff if api_version was not touched

* add schema check again

* use seperate filter for API

* increment api_version

* Added push step

* seperate publishing step to lower complexity

* fix naming

* fix file ending

* Update qc_checks.yaml

---------

Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2024-02-13 12:57:25 +11:00
.devcontainer Remove devcontainer Git Feature (#6398) 2024-02-04 09:28:52 +11:00
.devops Add azure pipelines (#4453) 2023-04-03 16:55:27 +10:00
.github Add API change detection (#6440) 2024-02-13 12:57:25 +11:00
.vscode [PUI] Login / Logout State Fixes (#6368) 2024-02-02 12:02:55 +11:00
ci Add API change detection (#6440) 2024-02-13 12:57:25 +11:00
contrib Remove --no-frontend option from installer (#6111) 2023-12-18 10:44:15 +11:00
deploy fix endline 2022-05-20 13:35:07 +02:00
docker (Yet another) Fix for dockerfile (#6452) 2024-02-08 14:38:55 +11:00
docs Use re_path instead of deprecated url function in plugin docs (#6466) 2024-02-12 08:00:06 +11:00
images/logo Export large version of the logo 2020-05-12 00:06:26 +10:00
InvenTree Add API change detection (#6440) 2024-02-13 12:57:25 +11:00
src/frontend New Crowdin updates (#6459) 2024-02-11 13:24:07 +11:00
.deepsource.toml deactivated coverage analyzer (#5851) 2023-11-04 08:15:33 +11: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 Generate API docs (#6319) 2024-02-08 16:19:57 +11:00
.pkgr.yml Notify when packager build fails (#6039) 2023-12-06 09:22:56 +11:00
.pre-commit-config.yaml [Plugin] Enhanced custom validation (#6410) 2024-02-06 22:00:22 +11:00
backportrc.json Add workflow for backporting PRs (#4912) 2023-05-28 18:55:06 +10:00
CONTRIBUTING.md Mention the API version bump in CONTRIBUTION.md (#6436) 2024-02-07 09:18:19 +11:00
crowdin.yml P-UI: Adapt translation CI (#5299) 2023-07-21 09:00:37 +10:00
docker-compose.yml Remove container-name:s from Compose file (#5339) 2023-07-25 12:51:37 +10:00
docker.dev.env Plugin auto migrate (#5668) 2023-10-06 11:38:01 +11:00
Dockerfile Postgresql fix (#6441) 2024-02-07 22:33:37 +11:00
LICENSE Update LICENSE 2022-02-21 22:31:10 +11:00
package-lock.json [WIP] Mantine datatables (#5218) 2023-07-27 10:10:07 +10:00
package.json Version bump (#5740) 2023-10-18 07:27:28 +11:00
Procfile Installer CLI fix (#6049) 2023-12-08 13:10:44 +11:00
pyproject.toml [CI] docstrings (#6172) 2024-01-11 14:40:07 +11:00
README.md Update README.md (#6270) 2024-01-18 09:37:54 +11:00
readthedocs.yml Update readthedocs (#5565) 2023-09-19 06:20:23 +10:00
RELEASE.md Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
requirements-dev.in Remove support for django-debug-toolbar (#6196) 2024-01-11 07:18:20 +11:00
requirements-dev.txt Bump django from 4.2.9 to 4.2.10 (#6448) 2024-02-08 10:57:20 +11:00
requirements.in Bump to Dj 4.x (#6173) 2024-02-06 13:30:50 +11:00
requirements.txt Bump django from 4.2.9 to 4.2.10 (#6448) 2024-02-08 10:57:20 +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
tasks.py Generate API docs (#6319) 2024-02-08 16:19:57 +11:00
yarn.lock Version bump (#5740) 2023-10-18 07:27:28 +11:00

InvenTree logo

InvenTree

Open Source Inventory Management System

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

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. A powerful plugin system provides support for custom applications and extensions.

Check out our website for more details.

🧭 Roadmap

Want to see what we are working on? Check out the roadmap tag and horizon milestone.

🛠️ 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

🧰 Deployment / Getting Started

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

Refer to the getting started guide for a full set of installation and setup instructions.

📱 Mobile App

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

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

💸 Sponsor

If you use InvenTree and find it to be useful, please consider sponsoring the project.

💎 Acknowledgements

We would like to acknowledge a few special projects:

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

❤️ Support

This project is supported by the following sponsors:

Martin Löper Oliver Lippert Seth Smith SpaceQuest Ltd Appwrite Cabot Technologies Markus Kasten

With ongoing resources provided by:

Servers by Digital Ocean Deploys by Netlify Translation by Crowdin

⚠️ License

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