This directory contains all the plugin data for the Casbin ecosystem page.
tags.ts - Defines all available tags (languages, plugin types)middleware-go.ts - Example: Go middleware pluginsindex.ts - Combines all plugin data and provides sorting functionsCreate a file for each category, for example:
adapter-*.ts for adaptersmiddleware-*.ts for middlewareswatcher-*.ts for watchersExample adapter-go.ts:
import type { TagType } from './tags'; export interface Plugin { title: string; description: string; image?: string; tags: TagType[]; } export const AdapterGoData: Plugin[] = [ { title: '[MySQL](https://github.com/casbin/mysql-adapter)', description: 'MySQL adapter for Casbin', tags: ['Go', 'Adapter', 'favorite'], }, // ... more plugins ];
Add your new data to the allPlugins array in index.ts:
import { AdapterGoData } from './adapter-go'; export const allPlugins: Plugin[] = [ ...MiddlewareGoData, ...AdapterGoData, // Add here // Add more... ];
Each plugin object should have:
[Name](url)/public/images/ecosystem/tags.tsGo, Java, NodeJS, PHP, Python, dotNET, Rust, Lua, Swift, Ruby, CppAdapter - Policy storage adaptersDispatcher - Distributed enforcementMiddleware - Web framework integrationRoleManager - Role hierarchy managementWatcher - Policy change notificationsfavorite - Featured pluginsPlace plugin logos in /public/images/ecosystem/ and reference them as:
image: '/images/ecosystem/gin.jpeg'
'favorite' tag to feature important pluginsThe old v2 data is in /v2/src/tableData/. To migrate:
MiddlewareGoData.js/img/ecosystem/ to /images/ecosystem/index.ts