Skip to content

Latest commit

 

History

History
100 lines (70 loc) · 2.97 KB

README.md

File metadata and controls

100 lines (70 loc) · 2.97 KB

Medusa Plugin Ultimate

Thumbnail

The Medusa Plugin Ultimate is a powerful tool that allows developers to easily add a user interface to entities marked with a decorator. With this plugin, you can seamlessly create, edit, view, and delete documents associated with these entities, and expose them through a specific route for your store.

Contact

Discord: @raiden56 ID:423897604330618883

Usage

Installation

npm i medusa-plugin-ultimate

Configuration

this env variables are required on the admin: MEDUSA_ADMIN_BACKEND_URL or BACKEND_URL

// medusa-config.js

const plugins = [
  /** @type {import('medusa-plugin-ultimate').Options} */
  {
    resolve: "medusa-plugin-ultimate",
    options: {
      enableUI: true,
      backendUrl: process.env.BACKEND_URL || "http://localhost:9000",
    },
  },
];

// ...

Final Step

Now create your entities and don't forget to add migrations for them, after that the UI will automatically be generated for your entitiy.

// example:
// src/models

import { BeforeInsert, Column, Entity } from "typeorm";

import { BaseEntity } from "@medusajs/medusa";
import { generateEntityId } from "@medusajs/utils";

import {
  UltimateEntity,
  UltimateEntityField,
  UltimateEntityFieldTypes,
} from "medusa-plugin-ultimate/dist/index";

@Entity()
@UltimateEntity({})
export class BlogPost extends BaseEntity {
  @Column({ type: "varchar", nullable: false })
  @UltimateEntityField({
    type: UltimateEntityFieldTypes.STRING,
  })
  title: string;

  @Column({ type: "varchar", nullable: true })
  @UltimateEntityField({
    type: UltimateEntityFieldTypes.MARKDOWN,
  })
  content: string;

  @BeforeInsert()
  private beforeInsert(): void {
    this.id = generateEntityId(this.id, "blog-post");
  }
}

Documentation

See Documentation.

Examples

Features

  • Automatically Create UI For Entities: The Medusa Plugin Ultimate seamlessly integrates with your entities. By simply marking an entity with a decorator, you can enable a user interface for it in the Medusa dashboard.

  • Create, Edit, View, Delete: Once your entity has a UI, you can easily perform essential CRUD operations. Create new documents, edit existing ones, view their details, and delete them with ease.

  • Customizable UI: The UI generated by this plugin is customizable, allowing you to tailor it to your specific requirements. You can control the appearance and behavior of the UI elements.

  • Route Exposition: In addition to the dashboard integration, this plugin exposes your entity documents via a specific route. This makes it easy for your store to interact with these documents programmatically.