Skip to content
@unopim

UnoPim

A free and open-source Laravel-based PIM system to help businesses organize, manage, and enrich their product data centrally.

UnoPim logo

Total Downloads Latest Stable Version License Tests Lint

GitHub Stars GitHub Forks

Follow on X YouTube @UnoPIM Facebook unopim

🌐 Website  ·  📘 Documentation  ·  🚀 Installation  ·  🐳 Docker Installation  ·  🎯 Live Demo

🇦🇪 🇪🇸 🇩🇰 🇩🇪 🇦🇺 🇬🇧 🇳🇿 🇺🇸 🇪🇸 🇻🇪 🇫🇮 🇫🇷 🇮🇳 🇭🇷 🇮🇩 🇮🇹 🇯🇵 🇰🇷 🇲🇳 🇳🇱 🇳🇴 🇵🇱 🇧🇷 🇵🇹 🇷🇴 🇷🇺 🇸🇪 🇵🇭 🇹🇷 🇺🇦 🇻🇳 🇨🇳 🇹🇼

UnoPim is an open-source Product Information Management (PIM) and Digital Asset Management (DAM) platform built on Laravel 13. It helps businesses organize, manage, and enrich their product data and digital assets in one central repository — now with built-in AI agent capabilities for conversational product management.


🎥 Watch & Learn

Introducing Open Source PIM — UnoPim
Introducing Open Source PIM — UnoPim
Can an Open Source PIM Handle 10M Products? — Meet UnoPIM
10M Products? Meet UnoPim
UnoPim CSV Import Optimization — 10x Faster
CSV Import 10x Faster

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, or download the UnoPim at Scale whitepaper (PDF) for the full benchmarks.

UnoPim scaling to 10 million products

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

    AI Agent Chat

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

    Magic AI with Multi-Platform Support

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

    AI-powered Product Content Generation

  • Centralized Product Management Manage all your product data in one place.

    Centralized Product Management Interface

  • Data Enrichment Enhance your product information with detailed attributes and descriptions.

    Data Enrichment Interface

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

    Dashboard with Analytics

  • User Management Control user access and permissions.

    User Management Interface

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

    API Integration Interface

  • Localization Support for 33 languages and locales out of the box.

    Localization Support

  • Multi-Channel Support for multiple sales channels.

    Multi-Channel Support

  • Multi-Currency Support for multiple currencies.

    Multi-Currency Support

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

    Data Import/Export Interface

  • Themes UI compatible with both Light and Dark themes.

    Light/Dark Theme Interface

  • Version Control Track the history of changes in your product data.

    Version Control Interface

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

🧩 Extensions

Free, officially maintained extensions:

  • UnoPim DAM — Digital Asset Management: file and directory management, asset upload and preview, metadata tagging, and CSV/XLSX asset assignment.
  • Shopify Connector — sync product data, prices, descriptions, and images with a Shopify store.
  • Bagisto Connector — sync products, attributes, and media into a Bagisto storefront, with customizable mappings.

More connectors and modules are listed on the UnoPim extensions marketplace. Extensions are ordinary Concord packages — see the developer documentation to build your own.

🚀 Installation

UnoPim supports MariaDB as a primary application datastore, alongside MySQL and PostgreSQL. UnoPim 3.1.0 added first-class MariaDB support for installation, upgrades, migrations, audit logs, and REST APIs. Composer installations default to MySQL; the supplied Docker stack defaults to PostgreSQL.

Requirements: Nginx/Apache2, PHP 8.4.1+, Composer 2.6+, and MariaDB 10.11 LTS or 11.8 LTS, MySQL 8.0.32+, or PostgreSQL 16. Node 22 LTS is recommended for asset builds.

Elasticsearch is optional. It is off by default (ELASTICSEARCH_ENABLED=false) and search and filtering fall back to the database, so a working install needs no Elasticsearch node. Set ELASTICSEARCH_ENABLED=true to index large catalogues; both Docker stacks already ship an Elasticsearch 8 service.

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.

On MariaDB: Use the latest patch of 10.11 LTS or 11.8 LTS, enable pdo_mysql, and set DB_CONNECTION=mariadb. Install mariadb-dump on the application host for upgrade backups. Community 10.6 and 10.10 are end of life; consult the MariaDB maintenance policy.

See the 3.1 requirements, MariaDB installation guide, or Installation Guide — or pick a quick path below.

Composer

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:

php artisan queue:work --queue=webhooks,system,completeness,default,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:

curl -O https://raw.githubusercontent.com/unopim/unopim/3.x/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:

INSTALLER_ADMIN_EMAIL=you@example.com
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:

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:

curl -O https://raw.githubusercontent.com/unopim/unopim/3.x/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:

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)

Deploy UnoPim on cost-effective cloud hosting

☁️ AWS Marketplace

Launch UnoPim on AWS Marketplace

🤝 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

Website Documentation YouTube X / Twitter Facebook

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 support@webkul.com.

📝 License

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

Pinned Loading

  1. unopim unopim Public

    Open source Product Information Management (PIM) and Digital Asset Management (DAM) platform built on Laravel — manage, enrich, and scale product data and digital assets beyond 10 million products.…

    PHP 11k 180

Repositories

Showing 10 of 16 repositories
  • unopim Public

    Open source Product Information Management (PIM) and Digital Asset Management (DAM) platform built on Laravel — manage, enrich, and scale product data and digital assets beyond 10 million products. Free forever.

    unopim/unopim's past year of commit activity
    PHP 11,011 MIT 180 28 29 Updated Sep 28, 2026
  • n8n-nodes-unopim Public

    n8n community nodes for UnoPim - connect your UnoPim PIM catalog to n8n workflows

    unopim/n8n-nodes-unopim's past year of commit activity
    TypeScript 0 MIT 1 0 0 Updated Sep 28, 2026
  • docs-extensions Public

    This repository contains documentation for Unopim extensions.

    unopim/docs-extensions's past year of commit activity
    JavaScript 0 9 0 3 Updated Sep 25, 2026
  • bagisto-rest-api Public

    Rest API plugin for the integration of UnoPim Bagisto.

    unopim/bagisto-rest-api's past year of commit activity
    PHP 1 7 0 2 Updated Sep 17, 2026
  • unopim-digital-asset-management Public

    Unopim Digital Asset Management (DAM) is a flexible solution for managing digital assets in the Unopim PIM ecosystem. Key features include file and directory management, asset upload, preview, and deletion, advanced metadata tagging, collaboration tools, and CSV/XLSX export for asset assignment.

    unopim/unopim-digital-asset-management's past year of commit activity
    PHP 29 MIT 29 4 1 Updated Sep 16, 2026
  • bagisto-connector Public

    Unopim-Bagisto Connector enables seamless data sync between Unopim PIM and Bagisto. It supports syncing of product information, attributes, and media assets. Key features include customizable mappings, Bagisto API compatibility, and real-time updates, ensuring accurate and consistent data across platforms.

    unopim/bagisto-connector's past year of commit activity
    PHP 0 5 0 0 Updated Sep 16, 2026
  • temp-media Public
    unopim/temp-media's past year of commit activity
    0 0 0 0 Updated Sep 16, 2026
  • .github Public

    A free and open-source Laravel-based PIM system to help businesses organize, manage, and enrich their product data centrally.

    0 MIT 0 0 0 Updated Sep 9, 2026
  • unopim-docs Public

    Documentation for Unopim, a free and open-source Laravel-based PIM system. Includes installation guides, usage instructions, and developer resources for managing and enriching product data.

    unopim/unopim-docs's past year of commit activity
    TypeScript 2 10 0 0 Updated Sep 9, 2026
  • user-guide Public

    An In-Depth User Guide for Effortlessly Using Unopim

    unopim/user-guide's past year of commit activity
    Vue 1 9 0 0 Updated Sep 9, 2026

People

This organization has no public members. You must be a member to see who’s a part of this organization.