This is the standard setup all 2sxc developers use. So to keep automation flowing, you need to do the same.
Basics for C# and/or JS
- Create the root for everything - we recommend
c:\Projects\2sxc\
.
- In this folder, open the terminal and run these git-clones (do both if you want full development setup)
- For #C development
git clone https://github.com/2sic/2sxc
(the core CMS parts)
git clone https://github.com/2sic/eav-server
(the EAV backend)
- For both C# and JS
git clone https://github.com/2sic/2sxc-sources
(the latest js builds)
- For JS Development
git clone https://github.com/2sic/2sxc-ui
(JS parts like the $2sxc)
git clone https://github.com/2sic/eav-ui
(main edit/admin UI)
- For Docs generation
git clone https://github.com/2sic/2sxc-docs
(the documentation)
- Configure the enviromment paths Build Configuration Files in 2sxc 16+
Setup DNN
- Install a DNN 9.6.1 (or newer) - we recommend to
c:\projects\2sxc\2sxc-dnn961
We recommend you do this using nvquicksite, but you can also do it manually if you are comfortable with that.
We also recommend that you use 9.6.1, as that's the minimum version we target, and we want to be sure you don't use a newer DNN API.
- Whatever domain you use doesn't matter
- Then install the latest 2sxc from the releases
Setup Oqtane
- Run Oqtane
- Run 2sxc on Oqtane
To Develop JS
JS Development is separate - so you can either do only JS, only C# or both. If you also want JS development, make sure you also cloned the repos from before. Then...
Run npm ci
(complete init/continuous integration) in these locations to get packages:
- npm ci 2sxc-ui
after 2sxc-ui npm ci you cann all other Project with ci-all (globale package.json)
- npm ci eav-ui
Test-run the builds on
- 2sxc-ui release all (will build all sub-projects)
The JS File are in: C:\Projects\2sxc\2sxc-dnn9113\Website\DesktopModules\ToSIC_SexyContent\dist
- eav-ui prod-all (will build all sub-projects
The JS File are in: C:\Projects\2sxc\2sxc-dnn9113\Website\DesktopModules\ToSIC_SexyContent\dist
If everything worked, running these build updates the _latest
folder in the sxc-sources and also in DNN (. If not, your environment variables are probably wrong. The JS File are in: C:\Projects\2sxc\2sxc-dnn9113\Website\DesktopModules\ToSIC_SexyContent\dist
For Documentation
Documentation is made with docfx that has to be installed on dev computer.
dotnet tool install -g docfx
It is developed in 2sxc-docs repo and generated from md files and 2sxc/EAV c# and js source code.
To build and run you local version of documentation:
- cd "C:\Projects\2sxc\2sxc-docs\2sxc Docs Generator"
- docfx build docfx.json --serve
- open in browser http://localhost:8080
Current documentation is published to https://docs.2sxc.org/.
More info: How to contribute to 2sxc documentation.
Verify the setup
- Open 2sxc Multi-Target.sln (If you use DNN and Oqtane)
- Unload the following projects
Intergration > BasicEav01 (unloaded)
Intergration > SxcEdit01 (unloaded)
- Compile in Visual-Studio, new (ca. 30) DLL Files now in 2sxc-dnn9113 > Website > bin
- Now you can start coding :)