strapi/docs/.vuepress/dist/assets/js/65.0cd2da1f.js
2018-10-05 17:24:17 +02:00

1 line
3.0 KiB
JavaScript

(window.webpackJsonp=window.webpackJsonp||[]).push([[65],{243:function(n,e,t){"use strict";t.r(e);var s=t(0),i=Object(s.a)({},function(){this.$createElement;this._self._c;return this._m(0)},[function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticClass:"content"},[t("h1",{attrs:{id:"plugin-folders-and-files-architecture"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#plugin-folders-and-files-architecture","aria-hidden":"true"}},[n._v("#")]),n._v(" Plugin Folders and Files Architecture")]),n._v(" "),t("p",[n._v("The logic of a plugin is located at his root directory "),t("code",[n._v("./plugins/**")]),n._v(". The admin panel related parts of each plugin is contained in the "),t("code",[n._v("/admin")]),n._v(" folder.\nThe folders and files structure is the following:")]),n._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[n._v("/plugin\n└─── admin // Contains the plugin's front-end\n| └─── build // Webpack build of the plugin\n| └─── src // Source code directory\n| └─── bootstrap.js // (Optional) Contains the logic to execute before rendering the plugin\n| └─── components // Contains the list of React components used by the plugin\n| └─── containers\n| | └─── App // Container used by every others containers\n| | └─── HomePage\n| | └─── action.js // List of Redux actions used by the current container\n| | └─── constants.js // List of actions constants\n| | └─── index.js // React component of the current container\n| | └─── reducer.js // Redux reducer used by the current container\n| | └─── sagas.js // List of sagas functions\n| | └─── selectors.js // List of selectors\n| | └─── styles.scss // Style of the current container\n| |\n| └─── requirements.js // (Optional) Contains the logic to prevent a plugin from being rendered\n| └─── translations // Contains the translations to make the plugin internationalized\n| └─── en.json\n| └─── fr.json\n└─── config // Contains the configurations of the plugin\n| └─── functions\n| | └─── bootstrap.js // Asynchronous bootstrap function that runs before the app gets started\n| └─── policies // Folder containing the plugin's policies\n| └─── queries // Folder containing the plugin's models queries\n| └─── routes.json // Contains the plugin's API routes\n└─── controllers // Contains the plugin's API controllers\n└─── middlewares // Contains the plugin's middlewares\n└─── models // Contains the plugin's API models\n└─── services // Contains the plugin's API services\n")])])])])}],!1,null,null,null);i.options.__file="plugin-architecture.md";e.default=i.exports}}]);