Windows Setup - AdaptableApps/cornerstone GitHub Wiki
Setup Windows for development
Getting started
Development of systems built on Cornerstone is supported on macOS, Linux and Windows 10 operating systems.
Cornerstone is primarily built on the dotnet framework, which allows a Cornerstone built system to target all end-user major operating systems either through native and wasm apps, or in the case of linux wasm only.
Note:
- See below for detailed compatibility, as not all platforms projects can be built on all operating systems due to restrictions in the build tools that are beyond our control
- Please ensure all files you create are encoded as
UTF-8andLFline endings for cross platform compatibility.
Setting up Windows for development
Latest dotnet installed:
net6.0 LTS:- https://dotnet.microsoft.com/en-us/download/dotnet/6.0
- Ensure to update the workloads after installing by running in your terminal:
dotnet workload install wasm-toolsdotnet workload install maui
- or
net7.0:
Supported Build/Debug Targets on macOS:
- AspNetCore Web API
- AspNetCore Blazor Server
- AspNetCore Blazor WebAssembly (WASM)
- MAUI:
- Android
- Windows
npm
npm (latest LTS version) needs to be installed:
Note:
- Because of Windows path length limitations it is recommended your code is checked out into folders in the root of your chosen hard drive e.g.
c:\ord:\etc
npm
npm (latest LTS version) needs to be installed: https://nodejs.org/en/download/
Git
Ensure the git cli is installed for your chosen development operating system:
IDE's:
- Rider Ide (Highly recommended for productivity):
- https://www.jetbrains.com/rider/download/
- Recommend using the Toolbox app to install and manage Rider
- Recommended Plugins:
- PlantUML
- Github Co-Pilot
- Visual Studio Code (vscode):
- https://code.visualstudio.com/download
- Recommended Extensions:
- PlantUML
- Visual Studio for Windows (Community Version is fine):
Windows Environment Variables
You will need to set the following environment variables in your Windows environment variable settings:
| Variable | Value |
|---|---|
| CORNERSTONE_PUBLIC_ROOT | c:\aa\cornerstone |
Regional Settings
Adjust the following regional settings in Windows settings:
- Change the decimal separator to . (i.e. the full stop character) if it is not that already
Source Dynamo
Create a folder in your src folder for the Cornerstone code gen data spreadsheet:
%{CsSystemCode}_ROOT%\{CsSystemCode}.code.gen\Data
Then copy the file %CORNERSTONE_PUBLIC_ROOT%\codegen\{CsSystemCode}.code.gen.data_{CsSystemCode}_0000000_1000.xlsx
Paste the file to your folder %{CsSystemCode}_ROOT%\{CsSystemCode}.code.gen\Data\
In the %{CsSystemCode}_ROOT%\scripts folder add a script called cscli_codegen_{CsSystemCode}_release.bat with the following text :
dotnet "%CORNERSTONE_PUBLIC_ROOT%\tools\aa.cs.console.net\bin\Release\net5.0\cscli.dll" action=codegen codegendatafile="%{CsSystemCode}_ROOT%\{CsSystemCode}.code.gen\Data\{CsSystemCode}.code.gen.data_{CsSystemCode}_0000000_1000.xlsx" productrootpath=%{CsSystemCode}_ROOT%
Fill in the data in the file %CORNERSTONE_PUBLIC_ROOT%\codegen\{CsSystemCode}.code.gen.data_{CsSystemCode}_0000000_1000.xlsx
Then you can run the code generator to generate all the code in your Cornerstone system's projects:
%{CsSystemCode}_ROOT%\scripts\cscli_codegen_{CsSystemCode}_release.bat