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

  1. Create the root for everything - we recommend c:\Projects\2sxc\.
  2. In this folder, open the terminal and run these git-clones (do both if you want full development setup)
  3. For #C development
    1. git clone https://github.com/2sic/2sxc (the core CMS parts)
    2. git clone https://github.com/2sic/eav-server (the EAV backend)
  4. For both C# and JS
    1. git clone https://github.com/2sic/2sxc-sources (the latest js builds)
  5. For JS Development
    1. git clone https://github.com/2sic/2sxc-ui (JS parts like the $2sxc)
    2. git clone https://github.com/2sic/eav-ui (main edit/admin UI)
  6. For Docs generation
    1. git clone https://github.com/2sic/2sxc-docs (the documentation)
  7. Configure the enviromment paths Build Configuration Files in 2sxc 16+

Setup DNN

  1. 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.
  2. Whatever domain you use doesn't matter
  3. Then install the latest 2sxc from the releases

Setup Oqtane

  1. Run Oqtane
  2. 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:

  1. npm ci 2sxc-ui
    after 2sxc-ui npm ci you cann all other Project with ci-all (globale package.json)
  2. 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:

  1. cd "C:\Projects\2sxc\2sxc-docs\2sxc Docs Generator"
  2. docfx build docfx.json --serve
  3. 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

  1. Open 2sxc Multi-Target.sln (If you use DNN and Oqtane)
  2. Unload the following projects 
    Intergration > BasicEav01 (unloaded)
    Intergration > SxcEdit01 (unloaded)
  3. Compile in Visual-Studio, new (ca. 30) DLL Files now in 2sxc-dnn9113 > Website > bin 
  4. Now you can start coding :)