https://github.com/raideno/medusa-plugin-ultimate
Medusa Plugin Ultimate is a plugin made for medusa that give super powers to your entities.
https://github.com/raideno/medusa-plugin-ultimate
medusa medusa-plugin medusa-plugin-ultimate
Last synced: 4 months ago
JSON representation
Medusa Plugin Ultimate is a plugin made for medusa that give super powers to your entities.
- Host: GitHub
- URL: https://github.com/raideno/medusa-plugin-ultimate
- Owner: raideno
- Created: 2023-10-16T14:35:24.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-10T22:30:38.000Z (almost 2 years ago)
- Last Synced: 2025-05-15T22:24:21.950Z (5 months ago)
- Topics: medusa, medusa-plugin, medusa-plugin-ultimate
- Language: TypeScript
- Homepage: https://medusa-plugin-ultimate.raideno.xyz
- Size: 1.61 MB
- Stars: 29
- Watchers: 1
- Forks: 5
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Medusa Plugin Ultimate

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.
## Documentation
See [Documentation](https://medusa-plugin-ultimate.raideno.xyz).
## 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`
```ts
// medusa-config.jsconst 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.
```ts
// example:
// src/modelsimport { 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](https://medusa-plugin-ultimate.raideno.xyz).
## Examples
- [Blog Posts](https://medusa-plugin-ultimate.raideno.xyz)
- [Blog Posts With Categories](https://medusa-plugin-ultimate.raideno.xyz)
- [Product Rich Description](https://medusa-plugin-ultimate.raideno.xyz)
- [Product Brand](https://medusa-plugin-ultimate.raideno.xyz)## 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.