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
[site-root]\2sxc\[app-name]
- the primary / Content App is located in
[site-root]\2sxc\Content
You can create your own folders to organize your templates as you need as the structure is completely open.
Special Folders and Files
/app-icon.png
is always used as the app-icon if provided/App_Data
is protected for special configuration and data, see App_Data/App_Data/app.json
is an optional configuration file, see app.json/App_Data/[something]
is usually used for special data like custom input field configuration/system
can contain custom input fields JavaScripts/api
contains...Controller.cs
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/live/api
Non-Exportable Folders
Some folders are not exported by default, and in v14.10+ you can configure it in more detail. See Export restrictions and app.json
Recommended sub folder names
The following folders have no technical relevance, but we recommend this naming to improve consistency.
src
and sub-folders should contain your javascript source files in original (unminified, etc.)dist
should 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, likelive\dist
Platform Differences Dnn ☢️ & Oqtane 🩸
In Dnn ☢️ the App-folder is located in
[Website-Root]\Portals\[site-id]\2sxc\[App-Folder-Name]
In Oqtane 🩸 the App-folder is located in
[Website-Root]\2sxc\[Site-Id]\[App-Folder-Name]
This difference is due to architecture and security differences.