qoliber / nebula-admin-theme

qoliber/nebula-admin-theme

Nebula admin theme and modules for Magento 2 / Mage-OS. Targets Magento 2.4.7+ (or Mage-OS 2.0+) on PHP 8.1+.

magento2-component Compatibility: Not yet tested Code Quality: Pending Tests: N/A Security: Pending proprietary

Are you the maintainer of qoliber?

Packagento pulls qoliber's Composer packages from the public registry so buyers can find them here.

Claim the namespace to take ownership, publish new releases directly, and start charging for premium versions.

Claim this namespace →

Nebula — Modern Admin Theme for Magento 2 / Mage-OS

Replace Magento's legacy admin theme — bring it into the 21st century.

Nebula modernizes the Magento Admin with a faster interface, cleaner workflows,
dark mode, and developer-friendly customization — without forcing you to
replace Magento itself.
It runs alongside your existing store on
Magento 2.4.7+ (or Mage-OS 2.0+) and PHP 8.1+.


Why Nebula

Faster Native ES modules replace RequireJS; vanilla JS replaces jQuery; Alpine.js 3 replaces KnockoutJS.
🎨 Beautiful Tailwind CSS 4 styling, dark mode, and 18 built-in skins for client-specific branding.
🧩 Composable JSON-driven forms and grids plus reusable snippets — clearer definitions in place of sprawling XML UI Components.
🛠️ Developer-friendly A simpler, more maintainable admin stack. Easier grid and form extensions, fewer moving parts.
🚀 Zero build step Ships with compiled assets — install and go.

Who it's for

  • Store owners & admin teams — faster daily order, catalog, and content
    workflows, with dark mode and pinned navigation. Modernize the back office
    without changing your commerce platform.
  • Developers — a cleaner admin architecture with JSON definitions instead
    of XML UI patterns, and straightforward extension points.
  • Agencies — quicker admin improvements, client branding via skins, and
    lower back-office customization costs.

Highlights

  • JSON-driven UI — admin forms and grids defined as JSON, with a library of
    reusable composable snippets.
  • Modern frontend — Alpine.js 3, Tailwind CSS 4, native ES modules, no
    RequireJS/KnockoutJS/jQuery.
  • Dark mode + skins — multiple built-in themes; brand per client.
  • Focused modules — a clean, modular package (see below) you can adopt
    incrementally.
  • Well tested — extensive PHPUnit and Vitest coverage, plus bridge tests for
    third-party compatibility.

Installation

composer require qoliber/nebula-admin-theme
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush

Then activate the Nebula theme under
Stores → Configuration → Design (adminhtml), or assign it as the admin
theme for your environment.

Requirements

  • Magento 2.4.7+ or Mage-OS 2.0+
  • PHP 8.1+

Modules

This package ships the following focused modules:

Module Responsibility
Qoliber_Nebula Package umbrella + shared configuration
Qoliber_NebulaComponent Core component framework (definitions, snippets, registries)
Qoliber_NebulaForm JSON-driven admin forms
Qoliber_NebulaGrid JSON-driven admin grids
Qoliber_NebulaTheme Theme integration + data providers
Qoliber_NebulaMenu Admin navigation / menu
Qoliber_NebulaSkin Tailwind CSS styling and skins
Qoliber_NebulaMedia Media browser / picker
Qoliber_NebulaQuill Quill WYSIWYG editor integration
Qoliber_NebulaDirective Widget / directive support
Qoliber_NebulaStore Stores, websites, and design-config screens
Qoliber_NebulaSystem System pages and tooling
Qoliber_NebulaReports Reports grids
Qoliber_NebulaCurrency Currency screens
Qoliber_NebulaUser Admin users and roles
Qoliber_NebulaUiRemoval Disables Magento's UI Component reader/generator where Nebula replaces it

License

Nebula is released under the Nebula Community License (NCL) — a
source-available license. See LICENSE.md for the full terms.


Brought to you by

qoliber and Siteation

Changelog — Qoliber Nebula

All notable changes to the Nebula admin theme are recorded here.
The format follows Keep a Changelog;
the project aims to follow Semantic Versioning.

[0.9.0]

Added

  • Five modules promoted to the public package: Qoliber_NebulaCurrency,
    Qoliber_NebulaDirective, Qoliber_NebulaReports, Qoliber_NebulaSystem,
    and Qoliber_NebulaUser. The package now ships 16 modules plus the theme.

Changed

  • registration.php updated to list the published modules.
  • Version bumped to 0.9.0.

Security

  • Grid request hardening — whitelist filter and sort columns against the
    grid definition and clamp pageSize (MAX_PAGE_SIZE = 200) across all data
    providers (CollectionProvider, ProductProvider, CustomerGridProvider,
    SalesRuleCouponsGridProvider, AgreementGridProvider, AttributeSetProvider).
  • Media browserMediaPicker rejects path-traversal segments and asserts
    the resolved file stays under the media root before deletion.
  • Toast notifications — render admin messages as text (textContent),
    closing a DOM-XSS vector.
  • DefinitionAccessControl treats an empty acl string as unset and falls back
    to Magento_Backend::admin (default-deny).

Internal

  • Snippet templates no longer use ObjectManager::getInstance(); ViewModels are
    injected via SnippetViewModelRegistry (or layout XML), throwing if a
    view_model is missing instead of silently service-locating.
  • Complete PHPDoc coverage on changed PHP (FQDN @param/@return).

[0.8.0]

Added

  • Initial public release.
Versions
Version Stability QA Status Compatibility Released
0.9.0 stable Not tested Not yet tested Details 2026-06-04 11:27:00

Requires 2

Package Constraint
magento/framework ^103.0
php ^8.1

No QA results yet

QA pipelines haven't run for this version. Compatibility and quality results appear here once the vendor publishes a tagged release that gets ingested.

License
proprietary
Authors
  • Qoliber
  • Siteation

More from qoliber

View vendor
Make it pay

Turn an existing module into recurring revenue.

If you already maintain a Magento 2 module on GitHub or GitLab, listing it on Packagento takes about five minutes. We mirror your tags, handle distribution signing, and route paid licenses through Stripe Connect, so you can keep shipping the way you already do.