# Project structure
By default, the structure of your Strapi project looks as shown below:
- /.cache: contains files used to build your admin panel.
- /admin: (optional) contains your admin customization files.
- /api: contains the business logic of your project split into sub-folders per API.- **- /config: contains the API's configurations (- routes,- policies, etc.).
- /controllers: contains the API's custom controllers.
- /models: contains the API's models.
- /services: contains the API's custom services.
 
 
- /build: contains your admin panel UI build.
- /config- /functions: contains lifecycle or generic functions of the project.- /responses: contains custom responses.- 404.js: contains a template for constructing your custom 404 message.
 
- bootstrap.js: contains the code executed at the application start.
- cron.js: contains the cron tasks.
 
- server.js: contains the general configurations of the project.
- database.js: contains the database configurations of the project.
 
- /extensions: contains the files to extend installed plugins.
- /hooks: contains the custom hooks of the project.
- /middlewares: contains the custom middlewares of the project.
- /plugins: contains your local plugins.
- /public: contains the files accessible to the outside world.
- /node_modules: contains the npm packages used by the project.
