diff --git a/packages/generators/generators/src/files/js/plugin/.gitattributes b/packages/generators/generators/src/files/js/plugin/.gitattributes
deleted file mode 100644
index 065a11c71d..0000000000
--- a/packages/generators/generators/src/files/js/plugin/.gitattributes
+++ /dev/null
@@ -1,103 +0,0 @@
-# From https://github.com/Danimoth/gitattributes/blob/master/Web.gitattributes
-
-# Handle line endings automatically for files detected as text
-# and leave all files detected as binary untouched.
-* text=auto
-
-#
-# The above will handle all files NOT found below
-#
-
-#
-## These files are text and should be normalized (Convert crlf => lf)
-#
-
-# source code
-*.php text
-*.css text
-*.sass text
-*.scss text
-*.less text
-*.styl text
-*.js text eol=lf
-*.coffee text
-*.json text
-*.htm text
-*.html text
-*.xml text
-*.svg text
-*.txt text
-*.ini text
-*.inc text
-*.pl text
-*.rb text
-*.py text
-*.scm text
-*.sql text
-*.sh text
-*.bat text
-
-# templates
-*.ejs text
-*.hbt text
-*.jade text
-*.haml text
-*.hbs text
-*.dot text
-*.tmpl text
-*.phtml text
-
-# git config
-.gitattributes text
-.gitignore text
-.gitconfig text
-
-# code analysis config
-.jshintrc text
-.jscsrc text
-.jshintignore text
-.csslintrc text
-
-# misc config
-*.yaml text
-*.yml text
-.editorconfig text
-
-# build config
-*.npmignore text
-*.bowerrc text
-
-# Heroku
-Procfile text
-.slugignore text
-
-# Documentation
-*.md text
-LICENSE text
-AUTHORS text
-
-
-#
-## These files are binary and should be left untouched
-#
-
-# (binary is a macro for -text -diff)
-*.png binary
-*.jpg binary
-*.jpeg binary
-*.gif binary
-*.ico binary
-*.mov binary
-*.mp4 binary
-*.mp3 binary
-*.flv binary
-*.fla binary
-*.swf binary
-*.gz binary
-*.zip binary
-*.7z binary
-*.ttf binary
-*.eot binary
-*.woff binary
-*.pyc binary
-*.pdf binary
diff --git a/packages/generators/generators/src/files/js/plugin/.gitignore b/packages/generators/generators/src/files/js/plugin/.gitignore
deleted file mode 100644
index afe256bf30..0000000000
--- a/packages/generators/generators/src/files/js/plugin/.gitignore
+++ /dev/null
@@ -1,10 +0,0 @@
-# Don't check auto-generated stuff into git
-coverage
-node_modules
-stats.json
-package-lock.json
-
-# Cruft
-.DS_Store
-npm-debug.log
-.idea
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/components/Initializer/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/components/Initializer/index.js
deleted file mode 100644
index 71dc50e94c..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/components/Initializer/index.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- *
- * Initializer
- *
- */
-
-import { useEffect, useRef } from 'react';
-import PropTypes from 'prop-types';
-import pluginId from '../../pluginId';
-
-const Initializer = ({ setPlugin }) => {
- const ref = useRef();
- ref.current = setPlugin;
-
- useEffect(() => {
- ref.current(pluginId);
- }, []);
-
- return null;
-};
-
-Initializer.propTypes = {
- setPlugin: PropTypes.func.isRequired,
-};
-
-export default Initializer;
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/components/PluginIcon/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/components/PluginIcon/index.js
deleted file mode 100644
index e2bb2d5922..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/components/PluginIcon/index.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- *
- * PluginIcon
- *
- */
-
-import React from 'react';
-import { Puzzle } from '@strapi/icons';
-
-const PluginIcon = () => ;
-
-export default PluginIcon;
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/index.js
deleted file mode 100644
index 267b3a7f16..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/index.js
+++ /dev/null
@@ -1,61 +0,0 @@
-import { prefixPluginTranslations } from './utils/prefixPluginTranslations';
-import pluginPkg from '../../package.json';
-import pluginId from './pluginId';
-import Initializer from './components/Initializer';
-import PluginIcon from './components/PluginIcon';
-
-const name = pluginPkg.strapi.name;
-
-export default {
- register(app) {
- app.addMenuLink({
- to: `plugins/${pluginId}`,
- icon: PluginIcon,
- intlLabel: {
- id: `${pluginId}.plugin.name`,
- defaultMessage: name,
- },
- Component: async () => {
- const component = await import('./pages/App');
-
- return component;
- },
- permissions: [
- // Uncomment to set the permissions of the plugin here
- // {
- // action: '', // the action name should be plugin::plugin-name.actionType
- // subject: null,
- // },
- ],
- });
- app.registerPlugin({
- id: pluginId,
- initializer: Initializer,
- isReady: false,
- name,
- });
- },
-
- bootstrap(app) {},
- async registerTrads({ locales }) {
- const importedTrads = await Promise.all(
- locales.map((locale) => {
- return import(`./translations/${locale}.json`)
- .then(({ default: data }) => {
- return {
- data: prefixPluginTranslations(data, pluginId),
- locale,
- };
- })
- .catch(() => {
- return {
- data: {},
- locale,
- };
- });
- })
- );
-
- return Promise.resolve(importedTrads);
- },
-};
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/pages/App/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/pages/App/index.js
deleted file mode 100644
index 92e8152c32..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/pages/App/index.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- *
- * This component is the skeleton around the actual pages, and should only
- * contain code that should be seen on all pages. (e.g. navigation bar)
- *
- */
-
-import React from 'react';
-import { Switch, Route } from 'react-router-dom';
-import { AnErrorOccurred } from '@strapi/helper-plugin';
-import pluginId from '../../pluginId';
-import HomePage from '../HomePage';
-
-const App = () => {
- return (
-
-
- } />
- } />
-
-
- );
-};
-
-export default App;
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/pages/HomePage/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/pages/HomePage/index.js
deleted file mode 100644
index d8077665b8..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/pages/HomePage/index.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- *
- * HomePage
- *
- */
-
-import React from 'react';
-// import PropTypes from 'prop-types';
-import pluginId from '../../pluginId';
-
-const HomePage = () => {
- return (
-
-
{pluginId}'s HomePage
-
Happy coding
-
- );
-};
-
-export default HomePage;
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/pluginId.js b/packages/generators/generators/src/files/js/plugin/admin/src/pluginId.js
deleted file mode 100644
index 695317c0bd..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/pluginId.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import pluginPkg from '../../package.json';
-
-const pluginId = pluginPkg.name.replace(/^(@[^-,.][\w,-]+\/|strapi-)plugin-/i, '');
-
-export default pluginId;
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/translations/en.json b/packages/generators/generators/src/files/js/plugin/admin/src/translations/en.json
deleted file mode 100644
index 0967ef424b..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/translations/en.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/translations/fr.json b/packages/generators/generators/src/files/js/plugin/admin/src/translations/fr.json
deleted file mode 100644
index 0967ef424b..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/translations/fr.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/utils/getTrad.js b/packages/generators/generators/src/files/js/plugin/admin/src/utils/getTrad.js
deleted file mode 100644
index d0a071b26a..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/utils/getTrad.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import pluginId from '../pluginId';
-
-const getTrad = (id) => `${pluginId}.${id}`;
-
-export default getTrad;
diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/utils/prefixPluginTranslations.js b/packages/generators/generators/src/files/js/plugin/admin/src/utils/prefixPluginTranslations.js
deleted file mode 100644
index b7b93b23f9..0000000000
--- a/packages/generators/generators/src/files/js/plugin/admin/src/utils/prefixPluginTranslations.js
+++ /dev/null
@@ -1,11 +0,0 @@
-const prefixPluginTranslations = (trad, pluginId) => {
- if (!pluginId) {
- throw new TypeError("pluginId can't be empty");
- }
- return Object.keys(trad).reduce((acc, current) => {
- acc[`${pluginId}.${current}`] = trad[current];
- return acc;
- }, {});
-};
-
-export { prefixPluginTranslations };
diff --git a/packages/generators/generators/src/files/js/plugin/server/bootstrap.js b/packages/generators/generators/src/files/js/plugin/server/bootstrap.js
deleted file mode 100644
index 2aa48af4b3..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/bootstrap.js
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = ({ strapi }) => {
- // bootstrap phase
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/config/index.js b/packages/generators/generators/src/files/js/plugin/server/config/index.js
deleted file mode 100644
index 56b5ae6a46..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/config/index.js
+++ /dev/null
@@ -1,6 +0,0 @@
-'use strict';
-
-module.exports = {
- default: {},
- validator() {},
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/content-types/index.js b/packages/generators/generators/src/files/js/plugin/server/content-types/index.js
deleted file mode 100644
index 8b46fbbaad..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/content-types/index.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = {};
diff --git a/packages/generators/generators/src/files/js/plugin/server/controllers/index.js b/packages/generators/generators/src/files/js/plugin/server/controllers/index.js
deleted file mode 100644
index c8c47b5bdd..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/controllers/index.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-const myController = require('./my-controller');
-
-module.exports = {
- myController,
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/controllers/my-controller.js.hbs b/packages/generators/generators/src/files/js/plugin/server/controllers/my-controller.js.hbs
deleted file mode 100644
index 727d24d471..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/controllers/my-controller.js.hbs
+++ /dev/null
@@ -1,10 +0,0 @@
-'use strict';
-
-module.exports = ({ strapi }) => ({
- index(ctx) {
- ctx.body = strapi
- .plugin('{{ pluginName }}')
- .service('myService')
- .getWelcomeMessage();
- },
-});
diff --git a/packages/generators/generators/src/files/js/plugin/server/destroy.js b/packages/generators/generators/src/files/js/plugin/server/destroy.js
deleted file mode 100644
index 75f32f48c3..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/destroy.js
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = ({ strapi }) => {
- // destroy phase
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/index.js b/packages/generators/generators/src/files/js/plugin/server/index.js
deleted file mode 100644
index 5b524b1aff..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/index.js
+++ /dev/null
@@ -1,25 +0,0 @@
-'use strict';
-
-const register = require('./register');
-const bootstrap = require('./bootstrap');
-const destroy = require('./destroy');
-const config = require('./config');
-const contentTypes = require('./content-types');
-const controllers = require('./controllers');
-const routes = require('./routes');
-const middlewares = require('./middlewares');
-const policies = require('./policies');
-const services = require('./services');
-
-module.exports = {
- register,
- bootstrap,
- destroy,
- config,
- controllers,
- routes,
- services,
- contentTypes,
- policies,
- middlewares,
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/middlewares/index.js b/packages/generators/generators/src/files/js/plugin/server/middlewares/index.js
deleted file mode 100644
index 8b46fbbaad..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/middlewares/index.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = {};
diff --git a/packages/generators/generators/src/files/js/plugin/server/policies/index.js b/packages/generators/generators/src/files/js/plugin/server/policies/index.js
deleted file mode 100644
index 8b46fbbaad..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/policies/index.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = {};
diff --git a/packages/generators/generators/src/files/js/plugin/server/register.js b/packages/generators/generators/src/files/js/plugin/server/register.js
deleted file mode 100644
index 031ab6852f..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/register.js
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-
-module.exports = ({ strapi }) => {
- // register phase
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/routes/index.js b/packages/generators/generators/src/files/js/plugin/server/routes/index.js
deleted file mode 100644
index 4158ea39b1..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/routes/index.js
+++ /dev/null
@@ -1,10 +0,0 @@
-module.exports = [
- {
- method: 'GET',
- path: '/',
- handler: 'myController.index',
- config: {
- policies: [],
- },
- },
-];
diff --git a/packages/generators/generators/src/files/js/plugin/server/services/index.js b/packages/generators/generators/src/files/js/plugin/server/services/index.js
deleted file mode 100644
index 8d643e9d53..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/services/index.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-const myService = require('./my-service');
-
-module.exports = {
- myService,
-};
diff --git a/packages/generators/generators/src/files/js/plugin/server/services/my-service.js b/packages/generators/generators/src/files/js/plugin/server/services/my-service.js
deleted file mode 100644
index f565002462..0000000000
--- a/packages/generators/generators/src/files/js/plugin/server/services/my-service.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = ({ strapi }) => ({
- getWelcomeMessage() {
- return 'Welcome to Strapi 🚀';
- },
-});
diff --git a/packages/generators/generators/src/files/js/plugin/strapi-admin.js b/packages/generators/generators/src/files/js/plugin/strapi-admin.js
deleted file mode 100644
index 2d1a3d93ac..0000000000
--- a/packages/generators/generators/src/files/js/plugin/strapi-admin.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./admin/src').default;
diff --git a/packages/generators/generators/src/files/js/plugin/strapi-server.js b/packages/generators/generators/src/files/js/plugin/strapi-server.js
deleted file mode 100644
index 8a908be91d..0000000000
--- a/packages/generators/generators/src/files/js/plugin/strapi-server.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./server');
diff --git a/packages/generators/generators/src/files/ts/plugin/.gitattributes b/packages/generators/generators/src/files/ts/plugin/.gitattributes
deleted file mode 100644
index 065a11c71d..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/.gitattributes
+++ /dev/null
@@ -1,103 +0,0 @@
-# From https://github.com/Danimoth/gitattributes/blob/master/Web.gitattributes
-
-# Handle line endings automatically for files detected as text
-# and leave all files detected as binary untouched.
-* text=auto
-
-#
-# The above will handle all files NOT found below
-#
-
-#
-## These files are text and should be normalized (Convert crlf => lf)
-#
-
-# source code
-*.php text
-*.css text
-*.sass text
-*.scss text
-*.less text
-*.styl text
-*.js text eol=lf
-*.coffee text
-*.json text
-*.htm text
-*.html text
-*.xml text
-*.svg text
-*.txt text
-*.ini text
-*.inc text
-*.pl text
-*.rb text
-*.py text
-*.scm text
-*.sql text
-*.sh text
-*.bat text
-
-# templates
-*.ejs text
-*.hbt text
-*.jade text
-*.haml text
-*.hbs text
-*.dot text
-*.tmpl text
-*.phtml text
-
-# git config
-.gitattributes text
-.gitignore text
-.gitconfig text
-
-# code analysis config
-.jshintrc text
-.jscsrc text
-.jshintignore text
-.csslintrc text
-
-# misc config
-*.yaml text
-*.yml text
-.editorconfig text
-
-# build config
-*.npmignore text
-*.bowerrc text
-
-# Heroku
-Procfile text
-.slugignore text
-
-# Documentation
-*.md text
-LICENSE text
-AUTHORS text
-
-
-#
-## These files are binary and should be left untouched
-#
-
-# (binary is a macro for -text -diff)
-*.png binary
-*.jpg binary
-*.jpeg binary
-*.gif binary
-*.ico binary
-*.mov binary
-*.mp4 binary
-*.mp3 binary
-*.flv binary
-*.fla binary
-*.swf binary
-*.gz binary
-*.zip binary
-*.7z binary
-*.ttf binary
-*.eot binary
-*.woff binary
-*.pyc binary
-*.pdf binary
diff --git a/packages/generators/generators/src/files/ts/plugin/.gitignore b/packages/generators/generators/src/files/ts/plugin/.gitignore
deleted file mode 100644
index afe256bf30..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/.gitignore
+++ /dev/null
@@ -1,10 +0,0 @@
-# Don't check auto-generated stuff into git
-coverage
-node_modules
-stats.json
-package-lock.json
-
-# Cruft
-.DS_Store
-npm-debug.log
-.idea
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/components/Initializer/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/components/Initializer/index.tsx
deleted file mode 100644
index efa7752ac0..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/components/Initializer/index.tsx
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- *
- * Initializer
- *
- */
-
-import { useEffect, useRef } from 'react';
-import pluginId from '../../pluginId';
-
-type InitializerProps = {
- setPlugin: (id: string) => void;
-};
-
-const Initializer = ({ setPlugin }: InitializerProps) => {
- const ref = useRef(setPlugin);
-
- useEffect(() => {
- ref.current(pluginId);
- }, []);
-
- return null;
-};
-
-export default Initializer;
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/components/PluginIcon/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/components/PluginIcon/index.tsx
deleted file mode 100644
index e2bb2d5922..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/components/PluginIcon/index.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- *
- * PluginIcon
- *
- */
-
-import React from 'react';
-import { Puzzle } from '@strapi/icons';
-
-const PluginIcon = () => ;
-
-export default PluginIcon;
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/index.tsx
deleted file mode 100644
index 215d4b6073..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/index.tsx
+++ /dev/null
@@ -1,67 +0,0 @@
-import { prefixPluginTranslations } from './utils/prefixPluginTranslations';
-
-import pluginPkg from '../../package.json';
-import pluginId from './pluginId';
-import Initializer from './components/Initializer';
-import PluginIcon from './components/PluginIcon';
-
-const name = pluginPkg.strapi.name;
-
-export default {
- register(app: any) {
- app.addMenuLink({
- to: `plugins/${pluginId}`,
- icon: PluginIcon,
- intlLabel: {
- id: `${pluginId}.plugin.name`,
- defaultMessage: name,
- },
- Component: async () => {
- const component = await import('./pages/App');
-
- return component;
- },
- permissions: [
- // Uncomment to set the permissions of the plugin here
- // {
- // action: '', // the action name should be plugin::plugin-name.actionType
- // subject: null,
- // },
- ],
- });
- const plugin = {
- id: pluginId,
- initializer: Initializer,
- isReady: false,
- name,
- };
-
- app.registerPlugin(plugin);
- },
-
- bootstrap(app: any) {},
-
- async registerTrads(app: any) {
- const { locales } = app;
-
- const importedTrads = await Promise.all(
- (locales as any[]).map((locale) => {
- return import(`./translations/${locale}.json`)
- .then(({ default: data }) => {
- return {
- data: prefixPluginTranslations(data, pluginId),
- locale,
- };
- })
- .catch(() => {
- return {
- data: {},
- locale,
- };
- });
- })
- );
-
- return Promise.resolve(importedTrads);
- },
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/App/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/pages/App/index.tsx
deleted file mode 100644
index 4cd878ad12..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/App/index.tsx
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- *
- * This component is the skeleton around the actual pages, and should only
- * contain code that should be seen on all pages. (e.g. navigation bar)
- *
- */
-
-import React from 'react';
-import { Routes, Route } from 'react-router-dom';
-import { AnErrorOccurred } from '@strapi/helper-plugin';
-import pluginId from '../../pluginId';
-import HomePage from '../HomePage';
-
-const App = () => {
- return (
-
-
- } />
- } />
-
-
- );
-};
-
-export default App;
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/HomePage/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/pages/HomePage/index.tsx
deleted file mode 100644
index d7aa708f9e..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/HomePage/index.tsx
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- *
- * HomePage
- *
- */
-
-import React from 'react';
-import pluginId from '../../pluginId';
-
-const HomePage = () => {
- return (
-
-
{pluginId}'s HomePage
-
Happy coding
-
- );
-};
-
-export default HomePage;
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/pluginId.ts b/packages/generators/generators/src/files/ts/plugin/admin/src/pluginId.ts
deleted file mode 100644
index 695317c0bd..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/pluginId.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import pluginPkg from '../../package.json';
-
-const pluginId = pluginPkg.name.replace(/^(@[^-,.][\w,-]+\/|strapi-)plugin-/i, '');
-
-export default pluginId;
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/en.json b/packages/generators/generators/src/files/ts/plugin/admin/src/translations/en.json
deleted file mode 100644
index 0967ef424b..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/en.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/fr.json b/packages/generators/generators/src/files/ts/plugin/admin/src/translations/fr.json
deleted file mode 100644
index 0967ef424b..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/fr.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/getTrad.ts b/packages/generators/generators/src/files/ts/plugin/admin/src/utils/getTrad.ts
deleted file mode 100644
index a539a50151..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/getTrad.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import pluginId from '../pluginId';
-
-const getTrad = (id: string) => `${pluginId}.${id}`;
-
-export default getTrad;
diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/prefixPluginTranslations.ts b/packages/generators/generators/src/files/ts/plugin/admin/src/utils/prefixPluginTranslations.ts
deleted file mode 100644
index db1d7a536d..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/prefixPluginTranslations.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-type TradOptions = Record;
-
-const prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {
- if (!pluginId) {
- throw new TypeError("pluginId can't be empty");
- }
- return Object.keys(trad).reduce((acc, current) => {
- acc[`${pluginId}.${current}`] = trad[current];
- return acc;
- }, {} as TradOptions);
-};
-
-export { prefixPluginTranslations };
diff --git a/packages/generators/generators/src/files/ts/plugin/custom.d.ts b/packages/generators/generators/src/files/ts/plugin/custom.d.ts
deleted file mode 100644
index 321f3c0d1a..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/custom.d.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-declare module '@strapi/design-system/*';
-declare module '@strapi/design-system';
-declare module '@strapi/icons';
-declare module '@strapi/icons/*';
-declare module '@strapi/helper-plugin';
diff --git a/packages/generators/generators/src/files/ts/plugin/server/bootstrap.ts b/packages/generators/generators/src/files/ts/plugin/server/bootstrap.ts
deleted file mode 100644
index 7ac71a0421..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/bootstrap.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-// import type { Core } from '@strapi/strapi';
-
-export default (/* { strapi }: { strapi: Core.Strapi } */) => {
- // bootstrap phase
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/config/index.ts b/packages/generators/generators/src/files/ts/plugin/server/config/index.ts
deleted file mode 100644
index d51850754c..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/config/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-export default {
- default: {},
- validator() {},
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/content-types/index.ts b/packages/generators/generators/src/files/ts/plugin/server/content-types/index.ts
deleted file mode 100644
index ff8b4c5632..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/content-types/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default {};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/controllers/index.ts b/packages/generators/generators/src/files/ts/plugin/server/controllers/index.ts
deleted file mode 100644
index ec0ad85197..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/controllers/index.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import myController from './my-controller';
-
-export default {
- myController,
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/controllers/my-controller.ts.hbs b/packages/generators/generators/src/files/ts/plugin/server/controllers/my-controller.ts.hbs
deleted file mode 100644
index 63015633e5..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/controllers/my-controller.ts.hbs
+++ /dev/null
@@ -1,10 +0,0 @@
-import type { Core } from '@strapi/strapi';
-
-export default ({ strapi }: { strapi: Core.Strapi }) => ({
- index(ctx) {
- ctx.body = strapi
- .plugin('{{ pluginName }}')
- .service('myService')
- .getWelcomeMessage();
- },
-});
diff --git a/packages/generators/generators/src/files/ts/plugin/server/destroy.ts b/packages/generators/generators/src/files/ts/plugin/server/destroy.ts
deleted file mode 100644
index cca68bd3ec..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/destroy.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-// import type { Core } from '@strapi/strapi';
-
-export default (/* { strapi }: { strapi: Core.Strapi } */) => {
- // destroy phase
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/index.ts b/packages/generators/generators/src/files/ts/plugin/server/index.ts
deleted file mode 100644
index 76e8951190..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/index.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-import register from './register';
-import bootstrap from './bootstrap';
-import destroy from './destroy';
-import config from './config';
-import contentTypes from './content-types';
-import controllers from './controllers';
-import routes from './routes';
-import middlewares from './middlewares';
-import policies from './policies';
-import services from './services';
-
-export default {
- register,
- bootstrap,
- destroy,
- config,
- controllers,
- routes,
- services,
- contentTypes,
- policies,
- middlewares,
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/middlewares/index.ts b/packages/generators/generators/src/files/ts/plugin/server/middlewares/index.ts
deleted file mode 100644
index ff8b4c5632..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/middlewares/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default {};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/policies/index.ts b/packages/generators/generators/src/files/ts/plugin/server/policies/index.ts
deleted file mode 100644
index ff8b4c5632..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/policies/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default {};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/register.ts b/packages/generators/generators/src/files/ts/plugin/server/register.ts
deleted file mode 100644
index f452b6612a..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/register.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-// import type { Core } from '@strapi/strapi';
-
-export default (/* { strapi }: { strapi: Core.Strapi } */) => {
- // register phase
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/routes/index.ts b/packages/generators/generators/src/files/ts/plugin/server/routes/index.ts
deleted file mode 100644
index 8868a55502..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/routes/index.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-export default [
- {
- method: 'GET',
- path: '/',
- handler: 'myController.index',
- config: {
- policies: [],
- },
- },
-];
diff --git a/packages/generators/generators/src/files/ts/plugin/server/services/index.ts b/packages/generators/generators/src/files/ts/plugin/server/services/index.ts
deleted file mode 100644
index dcbdfe1485..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/services/index.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import myService from './my-service';
-
-export default {
- myService,
-};
diff --git a/packages/generators/generators/src/files/ts/plugin/server/services/my-service.ts b/packages/generators/generators/src/files/ts/plugin/server/services/my-service.ts
deleted file mode 100644
index b724667783..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/server/services/my-service.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-// import type { Core } from '@strapi/strapi';
-
-export default (/* { strapi }: { strapi: Core.Strapi } */) => ({
- getWelcomeMessage() {
- return 'Welcome to Strapi 🚀';
- },
-});
diff --git a/packages/generators/generators/src/files/ts/plugin/strapi-admin.js b/packages/generators/generators/src/files/ts/plugin/strapi-admin.js
deleted file mode 100644
index 2d1a3d93ac..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/strapi-admin.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./admin/src').default;
diff --git a/packages/generators/generators/src/files/ts/plugin/strapi-server.js b/packages/generators/generators/src/files/ts/plugin/strapi-server.js
deleted file mode 100644
index bf55958861..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/strapi-server.js
+++ /dev/null
@@ -1,3 +0,0 @@
-'use strict';
-
-module.exports = require('./dist/server');
diff --git a/packages/generators/generators/src/files/ts/plugin/tsconfig.json b/packages/generators/generators/src/files/ts/plugin/tsconfig.json
deleted file mode 100644
index 633f62e13d..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/tsconfig.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "extends": "@strapi/typescript-utils/tsconfigs/admin",
-
- "compilerOptions": {
- "target": "ESNext",
- "strict": true
- },
-
- "include": ["admin", "custom.d.ts"],
-
- "exclude": [
- "node_modules/",
- "dist/",
-
- // Do not include server files in the server compilation
- "server/",
- // Do not include test files
- "**/*.test.ts"
- ]
-}
diff --git a/packages/generators/generators/src/files/ts/plugin/tsconfig.server.json b/packages/generators/generators/src/files/ts/plugin/tsconfig.server.json
deleted file mode 100644
index c4e84576ab..0000000000
--- a/packages/generators/generators/src/files/ts/plugin/tsconfig.server.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "extends": "@strapi/typescript-utils/tsconfigs/server",
-
- "compilerOptions": {
- "outDir": "dist",
- "rootDir": "."
- },
-
- "include": [
- // Include the root directory
- "server",
- // Force the JSON files in the src folder to be included
- "server/**/*.json"
- ],
-
- "exclude": [
- "node_modules/",
- "dist/",
-
- // Do not include admin files in the server compilation
- "admin/",
- // Do not include test files
- "**/*.test.ts"
- ]
-}
diff --git a/packages/generators/generators/src/plopfile.ts b/packages/generators/generators/src/plopfile.ts
index 0d3d5c5bfb..fd50d8bc90 100644
--- a/packages/generators/generators/src/plopfile.ts
+++ b/packages/generators/generators/src/plopfile.ts
@@ -4,7 +4,6 @@ import { NodePlopAPI } from 'plop';
import generateApi from './plops/api';
import generateController from './plops/controller';
import generateContentType from './plops/content-type';
-import generatePlugin from './plops/plugin';
import generatePolicy from './plops/policy';
import generateMiddleware from './plops/middleware';
import generateMigration from './plops/migration';
@@ -19,7 +18,6 @@ export default (plop: NodePlopAPI) => {
generateApi(plop);
generateController(plop);
generateContentType(plop);
- generatePlugin(plop);
generatePolicy(plop);
generateMiddleware(plop);
generateMigration(plop);
diff --git a/packages/generators/generators/src/plops/plugin.ts b/packages/generators/generators/src/plops/plugin.ts
deleted file mode 100644
index c0d5c00bc4..0000000000
--- a/packages/generators/generators/src/plops/plugin.ts
+++ /dev/null
@@ -1,98 +0,0 @@
-import { NodePlopAPI } from 'plop';
-import chalk from 'chalk';
-import tsUtils from '@strapi/typescript-utils';
-import { strings } from '@strapi/utils';
-
-import validateInput from './utils/validate-input';
-
-const LANGUAGES = {
- javascript: 'JavaScript',
- typescript: 'TypeScript',
-};
-
-const logInstructions = (pluginName: string, { language }: { language: string }) => {
- const maxLength = ` resolve: './src/plugins/${pluginName}'`.length;
- const separator = Array(maxLength).fill('─').join('');
-
- const exportInstruction = language === 'js' ? 'module.exports =' : 'export default';
-
- return `
-You can now enable your plugin by adding the following in ${chalk.yellow(
- `./config/plugins.${language}`
- )}
-${separator}
-${exportInstruction} {
- ${chalk.gray('// ...')}
- ${chalk.green(`'${pluginName}'`)}: {
- enabled: ${chalk.yellow(true)},
- resolve: ${chalk.yellow(`'./src/plugins/${pluginName}'`)}
- },
- ${chalk.gray('// ...')}
-}
-${separator}
-`;
-};
-
-export default (plop: NodePlopAPI) => {
- // Plugin generator
- plop.setGenerator('plugin', {
- description: 'Generate a basic plugin',
- prompts: [
- {
- type: 'input',
- name: 'pluginName',
- message: 'Plugin name',
- validate: (input) => validateInput(input),
- },
- {
- type: 'list',
- name: 'language',
- message: 'Choose your preferred language',
- choices: Object.values(LANGUAGES),
- default: LANGUAGES.javascript,
- },
- ],
- actions(answers) {
- if (!answers) {
- return [];
- }
-
- const isTypescript = answers.language === LANGUAGES.typescript;
- const language = isTypescript ? 'ts' : 'js';
- const projectLanguage = tsUtils.isUsingTypeScriptSync(process.cwd()) ? 'ts' : 'js';
-
- if (!strings.isKebabCase(answers.pluginName)) {
- answers.pluginName = strings.toKebabCase(answers.pluginName);
- console.log(
- chalk.yellow(
- `Strapi only supports kebab-cased names for plugins.\nYour plugin has been automatically renamed to "${answers.pluginName}".`
- )
- );
- }
-
- return [
- {
- type: 'addMany',
- destination: 'plugins/{{ pluginName }}',
- base: `files/${language}/plugin`,
- templateFiles: `files/${language}/plugin/**`,
- },
- {
- type: 'add',
- path: 'plugins/{{ pluginName }}/README.md',
- templateFile: `templates/${language}/README.md.hbs`,
- },
- {
- type: 'add',
- path: 'plugins/{{ pluginName }}/package.json',
- templateFile: `templates/${language}/plugin-package.json.hbs`,
- },
- () =>
- plop.renderString(
- logInstructions(answers.pluginName, { language: projectLanguage }),
- null
- ),
- ];
- },
- });
-};
diff --git a/packages/generators/generators/src/templates/js/README.md.hbs b/packages/generators/generators/src/templates/js/README.md.hbs
deleted file mode 100644
index de1315dd14..0000000000
--- a/packages/generators/generators/src/templates/js/README.md.hbs
+++ /dev/null
@@ -1,3 +0,0 @@
-# Strapi plugin {{ pluginName }}
-
-A quick description of {{ pluginName }}.
diff --git a/packages/generators/generators/src/templates/js/plugin-package.json.hbs b/packages/generators/generators/src/templates/js/plugin-package.json.hbs
deleted file mode 100644
index 3ac066c3a0..0000000000
--- a/packages/generators/generators/src/templates/js/plugin-package.json.hbs
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "name": "{{ pluginName }}",
- "version": "0.0.0",
- "description": "This is the description of the plugin.",
- "strapi": {
- "name": "{{ pluginName }}",
- "description": "Description of {{titleCase pluginName }} plugin",
- "kind": "plugin",
- "displayName": "{{titleCase pluginName }}"
- },
- "dependencies": {
- "@strapi/design-system": "^1.6.3",
- "@strapi/helper-plugin": "^4.6.0",
- "@strapi/icons": "^1.6.3",
- "prop-types": "^15.7.2"
- },
- "devDependencies": {
- "react": "^18.2.0",
- "react-dom": "^18.2.0",
- "react-router-dom": "^6.0.0",
- "styled-components": "^5.3.6"
- },
- "peerDependencies": {
- "react": "^17.0.0 || ^18.0.0",
- "react-dom": "^17.0.0 || ^18.0.0",
- "react-router-dom": "^6.0.0",
- "styled-components": "^5.2.1"
- },
- "author": {
- "name": "A Strapi developer"
- },
- "maintainers": [
- {
- "name": "A Strapi developer"
- }
- ],
- "engines": {
- "node": ">=18.0.0 <=20.x.x",
- "npm": ">=6.0.0"
- },
- "license": "MIT"
-}
diff --git a/packages/generators/generators/src/templates/ts/README.md.hbs b/packages/generators/generators/src/templates/ts/README.md.hbs
deleted file mode 100644
index de1315dd14..0000000000
--- a/packages/generators/generators/src/templates/ts/README.md.hbs
+++ /dev/null
@@ -1,3 +0,0 @@
-# Strapi plugin {{ pluginName }}
-
-A quick description of {{ pluginName }}.
diff --git a/packages/generators/generators/src/templates/ts/plugin-package.json.hbs b/packages/generators/generators/src/templates/ts/plugin-package.json.hbs
deleted file mode 100644
index 0818dfd5d6..0000000000
--- a/packages/generators/generators/src/templates/ts/plugin-package.json.hbs
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "name": "{{ pluginName }}",
- "version": "0.0.0",
- "description": "This is the description of the plugin.",
- "strapi": {
- "name": "{{ pluginName }}",
- "description": "Description of {{ pluginName }} plugin",
- "kind": "plugin"
- },
- "dependencies": {
- "@strapi/design-system": "^1.6.3",
- "@strapi/helper-plugin": "^4.6.0",
- "@strapi/icons": "^1.6.3",
- },
- "devDependencies": {
- "@strapi/typescript-utils": "^4.6.0",
- "@types/react": "^18.0.0",
- "@types/react-dom": "^18.0.0",
- "@types/styled-components": "^5.1.26",
- "react": "^18.0.0",
- "react-dom": "^18.0.0",
- "react-router-dom": "^6.0.0",
- "styled-components": "^5.3.6",
- "typescript": "5.0.4"
- },
- "peerDependencies": {
- "react": "^17.0.0 || ^18.0.0",
- "react-dom": "^17.0.0 || ^18.0.0",
- "react-router-dom": "^6.0.0",
- "styled-components": "^5.2.1"
- },
- "author": {
- "name": "A Strapi developer"
- },
- "maintainers": [
- {
- "name": "A Strapi developer"
- }
- ],
- "engines": {
- "node": ">=18.0.0 <=20.x.x",
- "npm": ">=6.0.0"
- },
- "scripts": {
- "develop": "tsc -p tsconfig.server.json -w",
- "build": "tsc -p tsconfig.server.json"
- },
- "license": "MIT"
-}