Back to Unopim

README

README.md

3.0.015.9 KB
Original Source
<p align="center"> <a href="https://unopim.com/"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/5001c5b0-1ef3-4887-a907-f9c20082b0e6"> <source media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/a1e6793d-376e-4452-925b-c72b7d07389a">
</picture>
</a> </p> <p align="center"> <a href="https://packagist.org/packages/unopim/unopim"></a> <a href="https://packagist.org/packages/unopim/unopim"></a> <a href="https://packagist.org/packages/unopim/unopim"></a> <a href="https://github.com/unopim/unopim/actions"></a> <a href="https://github.com/unopim/unopim/actions"></a> </p> <p align="center"> <a href="https://github.com/unopim/unopim/stargazers"></a> <a href="https://github.com/unopim/unopim/network/members"></a> </p> <p align="center"> <a href="https://x.com/uno_pim"></a> <a href="https://www.youtube.com/@UnoPIM"></a> <a href="https://www.facebook.com/unopim/"></a> </p> <p align="center"> <a href="https://unopim.com/">๐ŸŒ&nbsp;Website</a> &nbsp;ยท&nbsp; <a href="https://devdocs.unopim.com/">๐Ÿ“˜&nbsp;Documentation</a> &nbsp;ยท&nbsp; <a href="https://devdocs.unopim.com/2.1.x/introduction/installation.html">๐Ÿš€&nbsp;Installation</a> &nbsp;ยท&nbsp; <a href="https://devdocs.unopim.com/2.1.x/introduction/installation.html#install-using-docker">๐Ÿณ&nbsp;Docker&nbsp;Installation</a> &nbsp;ยท&nbsp; <a href="https://demo.unopim.com/">๐ŸŽฏ&nbsp;Live&nbsp;Demo</a> </p> <p align="center"> ๐Ÿ‡ฆ๐Ÿ‡ช ๐Ÿ‡ช๐Ÿ‡ธ ๐Ÿ‡ฉ๐Ÿ‡ฐ ๐Ÿ‡ฉ๐Ÿ‡ช ๐Ÿ‡ฆ๐Ÿ‡บ ๐Ÿ‡ฌ๐Ÿ‡ง ๐Ÿ‡ณ๐Ÿ‡ฟ ๐Ÿ‡บ๐Ÿ‡ธ ๐Ÿ‡ช๐Ÿ‡ธ ๐Ÿ‡ป๐Ÿ‡ช ๐Ÿ‡ซ๐Ÿ‡ฎ ๐Ÿ‡ซ๐Ÿ‡ท ๐Ÿ‡ฎ๐Ÿ‡ณ ๐Ÿ‡ญ๐Ÿ‡ท ๐Ÿ‡ฎ๐Ÿ‡ฉ ๐Ÿ‡ฎ๐Ÿ‡น ๐Ÿ‡ฏ๐Ÿ‡ต ๐Ÿ‡ฐ๐Ÿ‡ท ๐Ÿ‡ฒ๐Ÿ‡ณ ๐Ÿ‡ณ๐Ÿ‡ฑ ๐Ÿ‡ณ๐Ÿ‡ด ๐Ÿ‡ต๐Ÿ‡ฑ ๐Ÿ‡ง๐Ÿ‡ท ๐Ÿ‡ต๐Ÿ‡น ๐Ÿ‡ท๐Ÿ‡ด ๐Ÿ‡ท๐Ÿ‡บ ๐Ÿ‡ธ๐Ÿ‡ช ๐Ÿ‡ต๐Ÿ‡ญ ๐Ÿ‡น๐Ÿ‡ท ๐Ÿ‡บ๐Ÿ‡ฆ ๐Ÿ‡ป๐Ÿ‡ณ ๐Ÿ‡จ๐Ÿ‡ณ ๐Ÿ‡น๐Ÿ‡ผ </p>

UnoPim is an open-source Product Information Management (PIM) system built on Laravel 13. It helps businesses organize, manage, and enrich their product information in one central repository โ€” now with built-in AI agent capabilities for conversational product management.


๐ŸŽฅ Watch & Learn

<table> <tr> <td align="center" width="33%"> <a href="https://www.youtube.com/watch?v=_P1zt4BxJK0">
    <sub><b>Introducing Open Source PIM โ€” UnoPim</b></sub>
  </a>
</td>
<td align="center" width="33%">
  <a href="https://www.youtube.com/watch?v=n76bJmdZkL8">
    

    <sub><b>10M Products? Meet UnoPim</b></sub>
  </a>
</td>
<td align="center" width="33%">
  <a href="https://www.youtube.com/watch?v=y6SA4Aip1ow">
    

    <sub><b>CSV Import 10x Faster</b></sub>
  </a>
</td>
</tr> </table>

Upgrading from an older version? See the Upgrade Guide and CHANGELOG for full release notes.

โš™๏ธ Scalability

UnoPim is engineered for high-volume catalogues. Read how UnoPim scales to handle over 10 million products.

<p align="center"> <a href="https://unopim.com/scaling-unopim-for-10-million-products/"> </a> </p>

โœจ Features

  • AI Agent Chat Manage products through natural language โ€” search, create, update, bulk edit, export, categorize, and generate content via conversational AI with multi-step tool calling.

    <p></p>
  • Magic AI with Multi-Platform Support Generate product content, images, and translations using 10+ AI providers. Configure and manage AI platforms with encrypted credential storage, connection testing, and dynamic model selection.

    <p></p>
  • Advanced AI-Powered Product Management Create compelling product content, generate high-quality images, and gain actionable insights with intelligent automation. Leverage customizable dashboards, seamless multi-user collaboration, and smart reporting tools to streamline workflows and boost productivity across your entire platform.

    <p></p>
  • Centralized Product Management Manage all your product data in one place.

    <p></p>
  • Data Enrichment Enhance your product information with detailed attributes and descriptions.

    <p></p>
  • Dashboard with Analytics Monitor channel readiness, product trends, recent activity, and items needing attention at a glance.

    <p></p>
  • User Management Control user access and permissions.

    <p></p>
  • API Integration Seamlessly integrate with other systems via RESTful APIs. Import our official Postman collection or browse the full API documentation.

    <p></p>
  • Localization Support for 33 languages and locales out of the box.

    <p></p>
  • Multi-Channel Support for multiple sales channels.

    <p></p>
  • Multi-Currency Support for multiple currencies.

    <p></p>
  • Import/Export with Real-Time Tracker Import and export product data using CSV, XLSX, and ZIP formats with real-time step-by-step progress tracking, pipeline visualization, and job-specific logging. Optimized for high-volume data handling with eager loading, increased batch sizes, and deferred indexing.

    <p></p>
  • Themes UI compatible with both Light and Dark themes.

    <p></p>
  • Version Control Track the history of changes in your product data.

    <p></p>
  • Digital Product Passport Build DPP templates, attach QR carriers, and publish per-product passports to a public tier โ€” with the publish path gated behind its own permission and queue.

  • Publication Channels Push enriched product payloads to downstream destinations on a queue, with per-channel payloads and delivery records.

  • Product Completeness Score every product against the attributes a family marks required per channel, and surface what is missing before it ships.

  • Measurement Families Define units and conversions once, then let measurement attributes capture an amount and a unit together.

  • Configurable Products & Associations Model variant structures with multi-level axes, and relate products through configurable association types.

  • Webhooks Notify external systems on product events over an asynchronous webhooks queue, so subscriber HTTP calls never block a save.

๐Ÿš€ Installation

Requirements: Nginx/Apache2, PHP 8.4.1+, Node 20 LTS+, Composer 2.5+, and MySQL 8.0.32+ or PostgreSQL 16+.

PHP extensions: calendar, curl, intl, mbstring, openssl, pdo, pdo_mysql, tokenizer โ€” these are hard composer.json requirements and composer install fails without them. The upgrade preflight additionally checks json, xml, gd, zip and fileinfo.

On PostgreSQL: ext-pdo_mysql is currently required by composer.json regardless of the database you run, so it must be installed even on a PostgreSQL-only host. Install ext-pdo_pgsql as well and set DB_CONNECTION=pgsql.

Full Installation Guide on devdocs โ€” or pick a quick path below.

Composer

bash
composer create-project unopim/unopim
cd unopim
php artisan unopim:install
php artisan serve

Open http://localhost:8000 in your browser. To execute imports/exports, AI agent tasks, completeness jobs, webhook deliveries, and Digital Product Passport publishing, start the queue worker:

bash
php artisan queue:work --queue=webhooks,system,default,completeness,publication

Note: The webhooks queue is required for outgoing webhook delivery. The Webkul\Webhook\Listeners\Product listener is dispatched asynchronously to this queue so product save/update requests are not blocked by HTTP calls to subscribers. If you omit webhooks from the --queue list, webhook events will queue up but never be processed.

Note: The publication queue processes Digital Product Passport publish jobs (single and bulk). Omit it and passports will queue but never publish. If you run a process manager such as Supervisor, add publication to your worker's --queue= list and restart it (e.g. sudo supervisorctl restart unopim-worker).

Docker

Requires Docker + Docker Compose v2+. See the full Docker guide for advanced configuration.

Run UnoPim โ€” pre-built images, no checkout, no configuration:

bash
curl -O https://raw.githubusercontent.com/unopim/unopim/master/compose.yaml
docker compose up -d

Open http://localhost:8000/admin. Set the admin credentials before the first docker compose up, in a .env file next to compose.yaml:

bash
[email protected]
INSTALLER_ADMIN_PASSWORD=<a password you choose>

If you leave them blank, the seeder generates a random 20-character password and writes it to storage/app/admin-credentials.txt inside the container:

bash
docker compose exec unopim cat storage/app/admin-credentials.txt

Change it after the first login. Every other setting has a working default; override any of them by exporting it or putting it in that same .env file.

MySQL instead of PostgreSQL:

bash
curl -O https://raw.githubusercontent.com/unopim/unopim/master/compose.mysql.yaml
docker compose -f compose.yaml -f compose.mysql.yaml up -d

Switching engines on an existing install needs a fresh database โ€” data is not migrated between them.

Develop UnoPim โ€” builds from your checkout and bind-mounts it, so edits are live:

bash
git clone https://github.com/unopim/unopim.git
cd unopim
cp .env.docker .env
docker compose -f compose.dev.yaml up -d

First boot installs Composer dependencies into ./vendor. The stack defaults to Nginx + PHP-FPM and PostgreSQL 16; for Apache use -f compose.dev.yaml -f compose.dev.apache.yaml, and for MySQL set COMPOSE_PROFILES=mysql, DB_CONNECTION=mysql, DB_HOST=unopim-mysql, DB_PORT=3306 in .env before the first up.

Port conflicts? If you already have MySQL, Redis, or Elasticsearch running locally, edit the FORWARD_* ports in .env and restart. See .env.docker for details.

Deploying? Inject APP_KEY as a secret rather than letting the container generate one, and set UNOPIM_SKIP_MIGRATIONS=true where the schema is managed by the deployment itself โ€” a Kubernetes Job or a release step โ€” so scaled replicas do not race each other.

โ˜๏ธ Cloud Hosting (Managed โ€” no setup)

<p> <a href="https://unopim.com/cloud-hosting"> </a> </p>

โ˜๏ธ AWS Marketplace

<p> <a href="https://aws.amazon.com/marketplace/pp/prodview-fdyosdv7k3cgw"> </a> </p>

๐Ÿค Contributing

Found a bug or want to add a feature? Open an issue or submit a pull request โ€” see CONTRIBUTING.md for the full flow.

๐Ÿ‘ฅ Community

<p align="center"> <a href="https://unopim.com/"></a> <a href="https://devdocs.unopim.com/"></a> <a href="https://www.youtube.com/@UnoPIM"></a> <a href="https://x.com/uno_pim"></a> <a href="https://www.facebook.com/unopim/"></a> </p>

Have questions, feedback, or want to contribute? Reach out through any of the channels above โ€” we're always happy to hear from fellow PIM builders.

๐Ÿ”’ Security

If you discover any security vulnerabilities, please follow our Security Policy and report them to [email protected].

๐Ÿ“ License

UnoPim is open-source software distributed under the MIT License.