App Folder Structure
Every app has an own folder for its files. Within that folder the App can have zero or hundreds of folders.
- all apps are located in
- the primary / Content App is located in
You can create your own folders to organize your templates as you need as the structure is completely open.
app-icon.pngis always used as the app-icon if provided
apithis folder contains c# files for the web services this app has. It's not available on the simpler Content App.
Note: if you're using Polymorphism then the api folder is usually in a sub-folder, like
.data\appthis folder may contain a snapshot of the app-data and is usefull when git-versioning your app
.data\.[something]is usually used for special data like custom input field configuration
systemthis folder would contain custom input fields
The following folders and files are special source-code folders and will not be included in export / import of Apps.
.gitis a hidden folder which all github repositories have.
node_modulesis the default folders when you use JS-automation while developing; it can be very large.
bower_componentscontains bower (run-time) dependencies for your JS and can become very large. Normally you will not want this in your app (because it contains a lot of unneeded stuff) so it too will not be exported when you create an app-package.
Recommended sub folder names
The following folders have no technical relevance, but we recommend this naming to improve consistency.
distshould contain your processed, minified, uglified and combined JS files
Note: if you're using Polymorphism then the dist folder is usually in a sub-folder, like
Platform Differences Dnn ☢️ & Oqtane 🩸
In Dnn ☢️ the App-folder is located in
In Oqtane 🩸 the App-folder is located in
This difference is due to architecture and security reasons and may change in future.