diff --git a/LavissaWoW.html b/LavissaWoW.html index 1a7f12df..c48d596e 100644 --- a/LavissaWoW.html +++ b/LavissaWoW.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Yes, WoW is for World of Warcraft","headline":"Lavissawow","mainEntityOfPage":{"@type":"WebPage","@id":"/LavissaWoW"},"url":"/LavissaWoW"} diff --git a/LavissaWoW/inventree-ipn-generator.html b/LavissaWoW/inventree-ipn-generator.html index c39ad65d..df5da89b 100644 --- a/LavissaWoW/inventree-ipn-generator.html +++ b/LavissaWoW/inventree-ipn-generator.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"LavissaWoW"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Introduction Installing this plugin enables the automatic generation if Internal Part Numbers (IPN) for parts.","headline":"Inventree Ipn Generator","mainEntityOfPage":{"@type":"WebPage","@id":"/LavissaWoW/inventree-ipn-generator"},"url":"/LavissaWoW/inventree-ipn-generator"} diff --git a/SchrodingersGat/inventree-brother-plugin.html b/SchrodingersGat/inventree-brother-plugin.html index 12018cb2..e492ff05 100644 --- a/SchrodingersGat/inventree-brother-plugin.html +++ b/SchrodingersGat/inventree-brother-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Brother label printer plugin for InvenTree","headline":"Inventree Brother Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-brother-plugin"},"url":"/SchrodingersGat/inventree-brother-plugin"} diff --git a/SchrodingersGat/inventree-consolidated-shipping.html b/SchrodingersGat/inventree-consolidated-shipping.html index 6768a99f..de5bc4f6 100644 --- a/SchrodingersGat/inventree-consolidated-shipping.html +++ b/SchrodingersGat/inventree-consolidated-shipping.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"InvenTree Consolidated Shipping Lines","headline":"InvenTree Consolidated Shipping Lines","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-consolidated-shipping"},"url":"/SchrodingersGat/inventree-consolidated-shipping"} diff --git a/SchrodingersGat/inventree-harmonized-codes.html b/SchrodingersGat/inventree-harmonized-codes.html index 20f760e2..ab2ba08e 100644 --- a/SchrodingersGat/inventree-harmonized-codes.html +++ b/SchrodingersGat/inventree-harmonized-codes.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Harmonized System Codes for InvenTree","headline":"Inventree Harmonized Codes","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-harmonized-codes"},"url":"/SchrodingersGat/inventree-harmonized-codes"} diff --git a/SchrodingersGat/inventree-order-history.html b/SchrodingersGat/inventree-order-history.html index c78e62f6..f32644c6 100644 --- a/SchrodingersGat/inventree-order-history.html +++ b/SchrodingersGat/inventree-order-history.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Order History for InvenTree","headline":"Inventree Order History","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-order-history"},"url":"/SchrodingersGat/inventree-order-history"} diff --git a/SchrodingersGat/inventree-rolling-stocktake.html b/SchrodingersGat/inventree-rolling-stocktake.html index 27489c55..32ac814b 100644 --- a/SchrodingersGat/inventree-rolling-stocktake.html +++ b/SchrodingersGat/inventree-rolling-stocktake.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Rolling Stocktake for InvenTree","headline":"Inventree Rolling Stocktake","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-rolling-stocktake"},"url":"/SchrodingersGat/inventree-rolling-stocktake"} diff --git a/SchrodingersGat/inventree-stock-forecasting.html b/SchrodingersGat/inventree-stock-forecasting.html index 02cbd3ff..b3ca33ee 100644 --- a/SchrodingersGat/inventree-stock-forecasting.html +++ b/SchrodingersGat/inventree-stock-forecasting.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Stock Forecasting for InvenTree","headline":"Inventree Stock Forecasting","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-stock-forecasting"},"url":"/SchrodingersGat/inventree-stock-forecasting"} diff --git a/SchrodingersGat/inventree-test-statistics.html b/SchrodingersGat/inventree-test-statistics.html index 8379920a..4490b247 100644 --- a/SchrodingersGat/inventree-test-statistics.html +++ b/SchrodingersGat/inventree-test-statistics.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Test Statistics for InvenTree","headline":"Inventree Test Statistics","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-test-statistics"},"url":"/SchrodingersGat/inventree-test-statistics"} diff --git a/SchrodingersGat/inventree-wireviz.html b/SchrodingersGat/inventree-wireviz.html index 62e65296..67d5a4e9 100644 --- a/SchrodingersGat/inventree-wireviz.html +++ b/SchrodingersGat/inventree-wireviz.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SchrodingersGat"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Wireviz Extension for InvenTree","headline":"Inventree Wireviz","mainEntityOfPage":{"@type":"WebPage","@id":"/SchrodingersGat/inventree-wireviz"},"url":"/SchrodingersGat/inventree-wireviz"} diff --git a/SergeoLacruz.html b/SergeoLacruz.html index 7887bbae..730a610a 100644 --- a/SergeoLacruz.html +++ b/SergeoLacruz.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Hardware engineer in Germany and vintage fan.","headline":"Sergeolacruz","mainEntityOfPage":{"@type":"WebPage","@id":"/SergeoLacruz"},"url":"/SergeoLacruz"} diff --git a/SergeoLacruz/inventree-supplier-panel.html b/SergeoLacruz/inventree-supplier-panel.html index 7bc5c45d..1583d7fe 100644 --- a/SergeoLacruz/inventree-supplier-panel.html +++ b/SergeoLacruz/inventree-supplier-panel.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SergeoLacruz"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"The InvenTree-supplier-panel","headline":"Inventree Supplier Panel","mainEntityOfPage":{"@type":"WebPage","@id":"/SergeoLacruz/inventree-supplier-panel"},"url":"/SergeoLacruz/inventree-supplier-panel"} diff --git a/SergeoLacruz/inventree-zebra-plugin.html b/SergeoLacruz/inventree-zebra-plugin.html index 96913b8f..fa27ec61 100644 --- a/SergeoLacruz/inventree-zebra-plugin.html +++ b/SergeoLacruz/inventree-zebra-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"SergeoLacruz"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Zebra Label Printer Plugin for Inventree","headline":"Inventree Zebra Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/SergeoLacruz/inventree-zebra-plugin"},"url":"/SergeoLacruz/inventree-zebra-plugin"} diff --git a/afkiwers/inventree-kicad.html b/afkiwers/inventree-kicad.html index 5fa99d03..03d48b26 100644 --- a/afkiwers/inventree-kicad.html +++ b/afkiwers/inventree-kicad.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"afkiwers"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"KiCad Integration for InvenTree","headline":"Inventree Kicad","mainEntityOfPage":{"@type":"WebPage","@id":"/afkiwers/inventree-kicad"},"url":"/afkiwers/inventree-kicad"} diff --git a/afwkiers.html b/afwkiers.html index cabe4dde..12c9e283 100644 --- a/afwkiers.html +++ b/afwkiers.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"InvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.","headline":"Afwkiers","mainEntityOfPage":{"@type":"WebPage","@id":"/afwkiers"},"url":"/afwkiers"} diff --git a/blog/2026/02/12/db-update.html b/blog/2026/02/12/db-update.html index b9bbc981..99d1c25c 100644 --- a/blog/2026/02/12/db-update.html +++ b/blog/2026/02/12/db-update.html @@ -89,6 +89,8 @@

Migration Guide

+

Note: This procedure was updated on 2026-02-19

+

Our documentation provides a detailed database migration guide to assist users with this process. We recommend that users perform a backup of their database before attempting the migration, and follow the instructions carefully to ensure a smooth transition to the new database version.

Following is an example of the steps involved in migrating an InvenTree installation from a PostgreSQL 13 database to a PostgreSQL 17 database, in the context of a docker installation. The same principles apply for non-docker installations, but the particular commands may differ.

@@ -117,7 +119,28 @@

The new installation will be running InvenTree 1.2.0 with PostgreSQL 17

-

Step 1. Perform Backup

+

Data Backup

+ +

It is prudent to perform a regular backup of the database, before following the migration procedure. This can be done using the invoke backup command, as described in the documentation. This will create a backup of the database and media files in the data/backup directory.

+ +

Step 1. Ensure Starting Conditions are Met

+ + + +
docker compose up inventree-db -d
+docker compose run --rm inventree-server invoke update
+docker compose down
+
+ +

Step 2. Perform Manual Backup

The first step is to perform a backup of the existing database. This step must be performed with the old setup (postgres 13 / InvenTree 1.1.12), before we perform any updates to the software.

@@ -128,26 +151,30 @@

To perform the backup, we run the following commands:

docker compose up inventree-db -d
-docker compose run --rm inventree-server invoke backup
+docker compose run --rm inventree-server pg_dump postgresql://pguser@inventree-db:5432/inventree -f /home/inventree/data/backup/db_migrations.sql
 docker compose down
 
-

This will create a backup of the database and media files in the data/backup directory.

+

Note: You will be prompted for the password for the pguser user. This is the password that you set in the .env file (default is pgpassword).

+ +

Note: Do not change the path to the migrations file, this is the internal docker container path, and should not be changed.

+ +

This will create a backup of the database and media files in the inventree-data/backup directory (external to the docker containers). The database backup will be saved as db_migrations.sql.

Confirm that the backup files have been created before continuing to the next step.

-

Step 2. Move Database Directory

+

Step 3. Move Database Directory

-

The PostgreSQL database files are stored in the data/pgdb directory. We need to remove these files, as they are specific to PostgreSQL 13 and will not be compatible with PostgreSQL 17. Rather than deleting them, we will move them to a backup location, just in case we need to revert back to the old setup.

+

The PostgreSQL database files are stored in the inventree-data/pgdb directory. We need to remove these files, as they are specific to PostgreSQL 13 and will not be compatible with PostgreSQL 17. Rather than deleting them, we will move them to a backup location, just in case we need to revert back to the old setup.

-
mv data/pgdb data/pgdb_backup
+
mv inventree-data/pgdb inventree-data/pgdb_backup
 
-

Confirm that the pgdb directory has been moved to the backup location before continuing to the next step. The pgdb directory should no longer exist in the data directory.

+

Confirm that the pgdb directory has been moved to the backup location before continuing to the next step. The pgdb directory should no longer exist in the inventree-data directory.

-

Step 3. Update PostgreSQL Version

+

Step 4. Update PostgreSQL Version

-

Next, we need to update the PostgreSQL version in the docker-compose.yml file. Change the version from 13 to 17:

+

Next, we need to update the PostgreSQL version in the docker-compose.yml file. Change the version from postgres:13 to postgres:17:

Update PostgreSQL version

@@ -161,14 +188,25 @@ docker compose down

Now we can restore the data from the backup we created previously, into the new PostgreSQL 17 database. Run the following commands:

docker compose up inventree-db -d
-docker compose run --rm inventree-server invoke migrate
-docker compose run --rm inventree-server invoke restore
+docker compose run --rm inventree-server psql postgresql://pguser@inventree-db:5432/inventree -f /home/inventree/data/backup/db_migrations.sql
 docker compose down
 

This will restore the database and media files from the backup we created previously.

-

Step 5. Update InvenTree Version

+

Step 5. Verify Database Update

+ +

Launch the InvenTree server, and confirm that you can still access your data via the web interface.

+ +
docker compose up -d
+
+ +

Once you have confirmed that the data is accessible, you can stop the server again:

+ +
docker compose down
+
+ +

Step 6. Update InvenTree Version

Next, we need to update the InvenTree version in the .env file. Change the version from 1.1.12 to 1.2.0:

@@ -185,7 +223,7 @@ docker compose down docker compose run --rm inventree-server invoke update
-

Step 6. Verify New Setup

+

Step 7. Verify New Setup

Finally, we can start the new setup and verify that everything is working as expected.

@@ -200,7 +238,7 @@ docker compose run --rm inventree-server invoke update

Docker containers

-

Step 7. Celebrate!

+

Step 8. Celebrate!

Congratulations! You have successfully migrated your InvenTree installation to the latest version, with an updated PostgreSQL database. You can now enjoy the new features and improvements that come with InvenTree 1.2.0, while also benefiting from the enhanced performance and security of PostgreSQL 17.

diff --git a/blog/feed.atom b/blog/feed.atom index 801f0ac3..befc3def 100644 --- a/blog/feed.atom +++ b/blog/feed.atom @@ -1,4 +1,4 @@ -Jekyll2026-02-18T01:58:10+00:00/blog/feed.atomInvenTreeInvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.1.2.0 Release2026-02-12T00:00:00+00:002026-02-12T00:00:00+00:00/blog/2026/02/12/1.2.0The InvenTree team is excited to announce the release of version 1.2.0. Attention: This release has no support for PostgreSQL 13 - our docs contain information regading PostgreSQL updates. At least PostgreSQL 14 is required, we recommend PostgreSQL 18.

+Jekyll2026-02-18T23:30:12+00:00/blog/feed.atomInvenTreeInvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.1.2.0 Release2026-02-12T00:00:00+00:002026-02-12T00:00:00+00:00/blog/2026/02/12/1.2.0The InvenTree team is excited to announce the release of version 1.2.0. Attention: This release has no support for PostgreSQL 13 - our docs contain information regading PostgreSQL updates. At least PostgreSQL 14 is required, we recommend PostgreSQL 18.

This release includes numerous new features, improvements, and bug fixes.

@@ -111,6 +111,8 @@

Migration Guide

+

Note: This procedure was updated on 2026-02-19

+

Our documentation provides a detailed database migration guide to assist users with this process. We recommend that users perform a backup of their database before attempting the migration, and follow the instructions carefully to ensure a smooth transition to the new database version.

Following is an example of the steps involved in migrating an InvenTree installation from a PostgreSQL 13 database to a PostgreSQL 17 database, in the context of a docker installation. The same principles apply for non-docker installations, but the particular commands may differ.

@@ -139,7 +141,24 @@

The new installation will be running InvenTree 1.2.0 with PostgreSQL 17

-

Step 1. Perform Backup

+

Data Backup

+ +

It is prudent to perform a regular backup of the database, before following the migration procedure. This can be done using the invoke backup command, as described in the documentation. This will create a backup of the database and media files in the data/backup directory.

+ +

Step 1. Ensure Starting Conditions are Met

+ +
    +
  • postgres:13 is set in docker-compose.yml
  • +
  • INVENTREE_VERSION=1.1.12 is set in .env
  • +
  • Database schema has been updated to the latest version:
  • +
+ +
docker compose up inventree-db -d
+docker compose run --rm inventree-server invoke update
+docker compose down
+
+ +

Step 2. Perform Manual Backup

The first step is to perform a backup of the existing database. This step must be performed with the old setup (postgres 13 / InvenTree 1.1.12), before we perform any updates to the software.

@@ -150,26 +169,30 @@

To perform the backup, we run the following commands:

docker compose up inventree-db -d
-docker compose run --rm inventree-server invoke backup
+docker compose run --rm inventree-server pg_dump postgresql://pguser@inventree-db:5432/inventree -f /home/inventree/data/backup/db_migrations.sql
 docker compose down
 
-

This will create a backup of the database and media files in the data/backup directory.

+

Note: You will be prompted for the password for the pguser user. This is the password that you set in the .env file (default is pgpassword).

+ +

Note: Do not change the path to the migrations file, this is the internal docker container path, and should not be changed.

+ +

This will create a backup of the database and media files in the inventree-data/backup directory (external to the docker containers). The database backup will be saved as db_migrations.sql.

Confirm that the backup files have been created before continuing to the next step.

-

Step 2. Move Database Directory

+

Step 3. Move Database Directory

-

The PostgreSQL database files are stored in the data/pgdb directory. We need to remove these files, as they are specific to PostgreSQL 13 and will not be compatible with PostgreSQL 17. Rather than deleting them, we will move them to a backup location, just in case we need to revert back to the old setup.

+

The PostgreSQL database files are stored in the inventree-data/pgdb directory. We need to remove these files, as they are specific to PostgreSQL 13 and will not be compatible with PostgreSQL 17. Rather than deleting them, we will move them to a backup location, just in case we need to revert back to the old setup.

-
mv data/pgdb data/pgdb_backup
+
mv inventree-data/pgdb inventree-data/pgdb_backup
 
-

Confirm that the pgdb directory has been moved to the backup location before continuing to the next step. The pgdb directory should no longer exist in the data directory.

+

Confirm that the pgdb directory has been moved to the backup location before continuing to the next step. The pgdb directory should no longer exist in the inventree-data directory.

-

Step 3. Update PostgreSQL Version

+

Step 4. Update PostgreSQL Version

-

Next, we need to update the PostgreSQL version in the docker-compose.yml file. Change the version from 13 to 17:

+

Next, we need to update the PostgreSQL version in the docker-compose.yml file. Change the version from postgres:13 to postgres:17:

Update PostgreSQL version

@@ -183,14 +206,25 @@ docker compose down

Now we can restore the data from the backup we created previously, into the new PostgreSQL 17 database. Run the following commands:

docker compose up inventree-db -d
-docker compose run --rm inventree-server invoke migrate
-docker compose run --rm inventree-server invoke restore
+docker compose run --rm inventree-server psql postgresql://pguser@inventree-db:5432/inventree -f /home/inventree/data/backup/db_migrations.sql
 docker compose down
 

This will restore the database and media files from the backup we created previously.

-

Step 5. Update InvenTree Version

+

Step 5. Verify Database Update

+ +

Launch the InvenTree server, and confirm that you can still access your data via the web interface.

+ +
docker compose up -d
+
+ +

Once you have confirmed that the data is accessible, you can stop the server again:

+ +
docker compose down
+
+ +

Step 6. Update InvenTree Version

Next, we need to update the InvenTree version in the .env file. Change the version from 1.1.12 to 1.2.0:

@@ -207,7 +241,7 @@ docker compose down docker compose run --rm inventree-server invoke update
-

Step 6. Verify New Setup

+

Step 7. Verify New Setup

Finally, we can start the new setup and verify that everything is working as expected.

@@ -222,7 +256,7 @@ docker compose run --rm inventree-server invoke update

Docker containers

-

Step 7. Celebrate!

+

Step 8. Celebrate!

Congratulations! You have successfully migrated your InvenTree installation to the latest version, with an updated PostgreSQL database. You can now enjoy the new features and improvements that come with InvenTree 1.2.0, while also benefiting from the enhanced performance and security of PostgreSQL 17.

diff --git a/lippoliv.html b/lippoliv.html index fbca75b2..e2b76837 100644 --- a/lippoliv.html +++ b/lippoliv.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"With over 15 years of experience and big big passion I learned to take care about the details. They build up to the big picture we have in mind. I’m planning ahead & act early to prevent a big bang.","headline":"Lippoliv","mainEntityOfPage":{"@type":"WebPage","@id":"/lippoliv"},"url":"/lippoliv"} diff --git a/lippoliv/inventree-default-salesorder-items.html b/lippoliv/inventree-default-salesorder-items.html index e739f8c5..cc6c6d1a 100644 --- a/lippoliv/inventree-default-salesorder-items.html +++ b/lippoliv/inventree-default-salesorder-items.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"lippoliv"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Add default parts (configurable) to every newly created sales order automatically.","headline":"Inventree Default Salesorder Items","mainEntityOfPage":{"@type":"WebPage","@id":"/lippoliv/inventree-default-salesorder-items"},"url":"/lippoliv/inventree-default-salesorder-items"} diff --git a/matmair.html b/matmair.html index 513cabcb..fedf91d5 100644 --- a/matmair.html +++ b/matmair.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"I try to build an ecosystem of reusable plugins and integrations for InvenTree. Code once and KISS!","headline":"Matmair","mainEntityOfPage":{"@type":"WebPage","@id":"/matmair"},"url":"/matmair"} diff --git a/matmair/inventree-apprise.html b/matmair/inventree-apprise.html index b6d2ddea..c17281de 100644 --- a/matmair/inventree-apprise.html +++ b/matmair/inventree-apprise.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"matmair"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Send notifications from InvenTree via Apprise","headline":"Inventree Apprise","mainEntityOfPage":{"@type":"WebPage","@id":"/matmair/inventree-apprise"},"url":"/matmair/inventree-apprise"} diff --git a/matmair/inventree-rapidoc.html b/matmair/inventree-rapidoc.html index 09a5684d..b7e0c3b4 100644 --- a/matmair/inventree-rapidoc.html +++ b/matmair/inventree-rapidoc.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"matmair"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Use RapiDoc for Inventree API docs.","headline":"Inventree Rapidoc","mainEntityOfPage":{"@type":"WebPage","@id":"/matmair/inventree-rapidoc"},"url":"/matmair/inventree-rapidoc"} diff --git a/matmair/inventree-zapier.html b/matmair/inventree-zapier.html index c167da07..0d20181a 100644 --- a/matmair/inventree-zapier.html +++ b/matmair/inventree-zapier.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"matmair"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Integrate Zapier into InvenTree","headline":"Inventree Zapier","mainEntityOfPage":{"@type":"WebPage","@id":"/matmair/inventree-zapier"},"url":"/matmair/inventree-zapier"} diff --git a/melektron.html b/melektron.html index 0d64f3bd..39f9e068 100644 --- a/melektron.html +++ b/melektron.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Juggling with bits and bytes for fun and profit ;) (and also electrons if I feel like it)","headline":"Melektron","mainEntityOfPage":{"@type":"WebPage","@id":"/melektron"},"url":"/melektron"} diff --git a/melektron/inventree-adv-sheet-label.html b/melektron/inventree-adv-sheet-label.html index e14df23e..e2f7f630 100644 --- a/melektron/inventree-adv-sheet-label.html +++ b/melektron/inventree-adv-sheet-label.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"melektron"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"A label printing plugin for InvenTree which provides support for printing labels on off-the-shelf label sheet layouts and adds some more useful features compared to the sheet label plugin included with InvenTree.","headline":"Inventree Adv Sheet Label","mainEntityOfPage":{"@type":"WebPage","@id":"/melektron/inventree-adv-sheet-label"},"url":"/melektron/inventree-adv-sheet-label"} diff --git a/news/feed.atom b/news/feed.atom index 8600dbc4..722c6c17 100644 --- a/news/feed.atom +++ b/news/feed.atom @@ -1,4 +1,4 @@ -Jekyll2026-02-18T01:58:10+00:00/news/feed.atomInvenTree | NewsInvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.1.2.0 Release2026-02-12T00:00:00+00:002026-02-12T00:00:00+00:00/news/2026/02/12/1.2.01.2.0 Release +Jekyll2026-02-18T23:30:12+00:00/news/feed.atomInvenTree | NewsInvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.1.2.0 Release2026-02-12T00:00:00+00:002026-02-12T00:00:00+00:00/news/2026/02/12/1.2.01.2.0 Release

The InvenTree team is excited to announce the release of version 1.2.0! This update brings a host of new features, improvements, and bug fixes to enhance your experience.

diff --git a/piramja.html b/piramja.html index e9d666ec..1357a7d8 100644 --- a/piramja.html +++ b/piramja.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"And in the end, we have no choice but to embrace the chaos and laugh about it.","headline":"Piramja","mainEntityOfPage":{"@type":"WebPage","@id":"/piramja"},"url":"/piramja"} diff --git a/piramja/inventree-niimbot-plugin.html b/piramja/inventree-niimbot-plugin.html index a40f0083..fe51b4da 100644 --- a/piramja/inventree-niimbot-plugin.html +++ b/piramja/inventree-niimbot-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"piramja"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Introduction A label printing plugin for InvenTree, which provides support for the Niimbot Label Printers. This plugin is based on the amazing work from labbots/NiimPrintX and modifications from LorisPolenz/NiimPrintX.","headline":"Inventree Niimbot Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/piramja/inventree-niimbot-plugin"},"url":"/piramja/inventree-niimbot-plugin"} diff --git a/plugins.json b/plugins.json index be859a6a..f449e731 100644 --- a/plugins.json +++ b/plugins.json @@ -3,7 +3,7 @@ "/melektron/inventree-adv-sheet-label": { "name": "InvenTree Advanced Sheet Label", "author": "melektron", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -25,7 +25,7 @@ "/matmair/inventree-apprise": { "name": "InvenTree Apprise", "author": "matmair", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -47,7 +47,7 @@ "/SchrodingersGat/inventree-brother-plugin": { "name": "inventree-brother-plugin", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": false, @@ -69,7 +69,7 @@ "/wolflu05/inventree-bulk-plugin": { "name": "inventree-bulk-plugin", "author": "wolflu05", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -91,7 +91,7 @@ "/SchrodingersGat/inventree-consolidated-shipping": { "name": "inventree-consolidated-shipment-lines", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -113,7 +113,7 @@ "/wolflu05/inventree-cups-plugin": { "name": "inventree-cups-plugin", "author": "wolflu05", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -135,7 +135,7 @@ "/lippoliv/inventree-default-salesorder-items": { "name": "Default sales order items", "author": "lippoliv", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -157,7 +157,7 @@ "/wolflu05/inventree-dymo-plugin": { "name": "inventree-dymo-plugin", "author": "wolflu05", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "GPL-3.0+", "stable": true, @@ -179,7 +179,7 @@ "/SchrodingersGat/inventree-harmonized-codes": { "name": "inventree-harmonized-codes", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -201,7 +201,7 @@ "/LavissaWoW/inventree-ipn-generator": { "name": "inventree-ipn-generator", "author": "LavissaWoW", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -223,7 +223,7 @@ "/afkiwers/inventree-kicad": { "name": "inventree-kicad-plugin", "author": "afkiwers", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -245,7 +245,7 @@ "/piramja/inventree-niimbot-plugin": { "name": "inventree-niimbot-plugin", "author": "piramja", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -267,7 +267,7 @@ "/SchrodingersGat/inventree-order-history": { "name": "inventree-order-history", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -289,7 +289,7 @@ "/matmair/inventree-rapidoc": { "name": "Inventree RapiDoc", "author": "matmair", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT license", "stable": true, @@ -311,7 +311,7 @@ "/wolflu05/inventree-report-lsp-plugin": { "name": "inventree-report-lsp-plugin", "author": "wolflu05", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "GPL-3.0+", "stable": true, @@ -333,7 +333,7 @@ "/SchrodingersGat/inventree-rolling-stocktake": { "name": "inventree-rolling-stocktake", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -355,7 +355,7 @@ "/SchrodingersGat/inventree-stock-forecasting": { "name": "inventree-stock-forecasting", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -377,7 +377,7 @@ "/SergeoLacruz/inventree-supplier-panel": { "name": "inventree-supplier-panel", "author": "SergeoLacruz", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -399,7 +399,7 @@ "/SchrodingersGat/inventree-test-statistics": { "name": "inventree-test-statistics", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -421,7 +421,7 @@ "/SchrodingersGat/inventree-wireviz": { "name": "inventree-wireviz-plugin", "author": "SchrodingersGat", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -443,7 +443,7 @@ "/matmair/inventree-zapier": { "name": "inventree-zapier", "author": "matmair", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": false, @@ -465,7 +465,7 @@ "/SergeoLacruz/inventree-zebra-plugin": { "name": "inventree-zebra-plugin", "author": "SergeoLacruz", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "MIT", "stable": true, @@ -487,7 +487,7 @@ "/wolflu05/inventree-zebra": { "name": "inventree-zebra", "author": "wolflu05", - "last_modified": "2026-02-18 01:57:52 +0000", + "last_modified": "2026-02-18 23:29:56 +0000", "open_source": null, "license": "GPL-3.0+", "stable": true, diff --git a/schrodingersgat.html b/schrodingersgat.html index bf4555aa..6c4a670e 100644 --- a/schrodingersgat.html +++ b/schrodingersgat.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Maintainer of InvenTree.","headline":"Schrodingersgat","mainEntityOfPage":{"@type":"WebPage","@id":"/schrodingersgat"},"url":"/schrodingersgat"} diff --git a/sitemap.xml b/sitemap.xml index dceeb4c0..53df4b83 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -234,131 +234,131 @@ /LavissaWoW -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SergeoLacruz -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /afwkiers -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /lippoliv -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /matmair -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /melektron -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /piramja -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /schrodingersgat -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /wolflu05 -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /melektron/inventree-adv-sheet-label -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /matmair/inventree-apprise -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-brother-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /wolflu05/inventree-bulk-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-consolidated-shipping -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /wolflu05/inventree-cups-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /lippoliv/inventree-default-salesorder-items -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /wolflu05/inventree-dymo-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-harmonized-codes -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /LavissaWoW/inventree-ipn-generator -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /afkiwers/inventree-kicad -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /piramja/inventree-niimbot-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-order-history -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /matmair/inventree-rapidoc -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /wolflu05/inventree-report-lsp-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-rolling-stocktake -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-stock-forecasting -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SergeoLacruz/inventree-supplier-panel -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-test-statistics -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SchrodingersGat/inventree-wireviz -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /matmair/inventree-zapier -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /SergeoLacruz/inventree-zebra-plugin -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /wolflu05/inventree-zebra -2026-02-18T01:58:10+00:00 +2026-02-18T23:30:12+00:00 /404 diff --git a/wolflu05.html b/wolflu05.html index d80abac7..9bb5f14d 100644 --- a/wolflu05.html +++ b/wolflu05.html @@ -30,11 +30,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"InvenTree is an open-source inventory management system which provides intuitive parts management and stock control. It is at the center of an ecosystem of addins for EDA tools, API wrapper, deeply integrated plugins and 3rd party tools.","headline":"Wolflu05","mainEntityOfPage":{"@type":"WebPage","@id":"/wolflu05"},"url":"/wolflu05"} diff --git a/wolflu05/inventree-bulk-plugin.html b/wolflu05/inventree-bulk-plugin.html index 5e045755..4fd08aed 100644 --- a/wolflu05/inventree-bulk-plugin.html +++ b/wolflu05/inventree-bulk-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"wolflu05"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Bulk creation plugin for InvenTree","headline":"Inventree Bulk Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/wolflu05/inventree-bulk-plugin"},"url":"/wolflu05/inventree-bulk-plugin"} diff --git a/wolflu05/inventree-cups-plugin.html b/wolflu05/inventree-cups-plugin.html index 436c2509..af5cf406 100644 --- a/wolflu05/inventree-cups-plugin.html +++ b/wolflu05/inventree-cups-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"wolflu05"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Label printing plugin for generic cups printers","headline":"Inventree Cups Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/wolflu05/inventree-cups-plugin"},"url":"/wolflu05/inventree-cups-plugin"} diff --git a/wolflu05/inventree-dymo-plugin.html b/wolflu05/inventree-dymo-plugin.html index d227e545..5672e38b 100644 --- a/wolflu05/inventree-dymo-plugin.html +++ b/wolflu05/inventree-dymo-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"wolflu05"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Dymo label printer driver plugin for InvenTree","headline":"Inventree Dymo Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/wolflu05/inventree-dymo-plugin"},"url":"/wolflu05/inventree-dymo-plugin"} diff --git a/wolflu05/inventree-report-lsp-plugin.html b/wolflu05/inventree-report-lsp-plugin.html index 2acfbe5d..4a444fbb 100644 --- a/wolflu05/inventree-report-lsp-plugin.html +++ b/wolflu05/inventree-report-lsp-plugin.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"wolflu05"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"A report editor with auto completion, diagnostic messages and many more capabilities to help with creating custom templates, powered by django-template-lsp.","headline":"Inventree Report Lsp Plugin","mainEntityOfPage":{"@type":"WebPage","@id":"/wolflu05/inventree-report-lsp-plugin"},"url":"/wolflu05/inventree-report-lsp-plugin"} diff --git a/wolflu05/inventree-zebra.html b/wolflu05/inventree-zebra.html index 3537b2f0..2ef1010d 100644 --- a/wolflu05/inventree-zebra.html +++ b/wolflu05/inventree-zebra.html @@ -31,11 +31,11 @@ - + +{"@context":"https://schema.org","@type":"BlogPosting","author":{"@type":"Person","name":"wolflu05"},"dateModified":"2026-02-18T23:30:12+00:00","datePublished":"2026-02-18T23:30:12+00:00","description":"Zebra label printer driver plugin for InvenTree","headline":"Inventree Zebra","mainEntityOfPage":{"@type":"WebPage","@id":"/wolflu05/inventree-zebra"},"url":"/wolflu05/inventree-zebra"}