LogoLogo
Join our community
  • AdminJS
  • Contribute
  • Demo
  • Addons Marketplace
  • Installation
    • Getting started
    • Plugins
      • Adonis
      • Express
      • Nest
      • Fastify
      • Hapi
      • Koa
      • Community Plugins
        • FeathersJS
        • AdonisJS
      • Matrix
    • Adapters
      • TypeORM
      • Sequelize
      • Prisma
      • MikroORM
      • Objection
      • SQL
      • Mongoose
      • Community Adapters
        • AdonisJS
    • What's new in v7?
    • Migration Guide v7
  • Basics
    • Resource
    • Action
    • Property
    • Features
      • Relations
      • Upload
      • Logger
      • Import & Export
      • Password
      • Leaflet Maps
      • Writing your own features
    • API
      • List
      • New
      • Search
      • Show
      • Edit
      • Delete
      • Bulk Delete
    • Themes
    • Authentication
      • FirebaseAuthProvider
      • MatrixAuthProvider
  • How to write an addon?
  • UI Customization
    • Writing your own Components
    • Overwriting CSS styles
    • Dashboard customization
    • Changing the form view
    • Storybook
  • Tutorials
    • Role-Based Access Control
    • Internationalization (i18n)
    • Content Management System
    • Custom components library
    • Custom component internationalization
  • FAQ
    • PDF Generator
    • Charts
    • Forgot Password
  • ⚠️Legacy documentation
Powered by GitBook
On this page
  • Writing addons
  • Guidelines
  • Submitting your addons

How to write an addon?

PreviousMatrixAuthProviderNextWriting your own Components

Last updated 1 year ago

With the introduction of AdminJS Marketplace, members of the AdminJS community can now publish their created plugins there, either for free or for a fee. In this article, we will describe how you can write your own plugin and what steps to take to make it appear in the AdminJS Marketplace at .

Writing addons

There are various categories of addons that you can develop, but most fall into the following classifications:

  1. Adapters: These are libraries that establish a connection between your AdminJS panel and a database, either directly or through an ORM/ODM.

  2. Plugins: These libraries enable you to configure an AdminJS panel using different frameworks, facilitating the setup of API endpoints and views.

  3. Features: Libraries categorized as features extend resource configuration to offer built-in functionalities, such as upload logic or generic actions.

  4. Themes: Themes can range from a simple recoloring of the default AdminJS panel to a complete overhaul of its visual appearance.

  5. Authentication Providers: Introduced in version 7.4.0 of the adminjs package, authentication providers simplify and broaden the possibilities for authenticating into AdminJS.

If you're keen on participating in the development of AdminJS, we recommend reviewing the following articles within this documentation:

Guidelines

As addons are published on official AdminJS channels, there are several guidelines that each addon must adhere to in order to be published on the Marketplace:

  1. Usage of Typescript to maintain the readability of the code,

  2. Usage of ESLint to keep the code clean,

  3. Compatibility with the latest versions of AdminJS packages and building ESM output,

Every submitted addons will also have to be reviewed and tested by an AdminJS developer.

Submitting your addons

In case the articles above are not sufficient, feel free to reach out to us via our , and we will be happy to assist you.

To publish your addon, please contact us through the or . In the future, the process of adding addons will be automated.

https://cloud.adminjs.co
Resource
Action
Property
Writing your own features
Writing your own Components
Themes
Authentication
official Discord server
contact form
Discord