- .NET SDK 6.0 or above
- npm
- WebSharper sitelets for RPC
- WebSharper for F# to JavaScript translation
- WebSharper remoting
- WebSharper.Charting with a ChartJs-based renderer
- WebSharper.Forms for reactive forms
- Femto for managing npm dependencies
- Vite for development server and bundling
- HTML template: Windmill - by @estevanmaito
You can run the full app in watch mode using
dotnet run
This starts vite on port 5173 and the server on port 5001, listens to file changes in the entire solution and recompiles changes on the fly (TEMP: this is not entirely true as of yet: if you make changes in the shared project, you need to stop and re-run dotnet run from the root).
To view the app, navigate to
https://localhost:5173
Alternatively, you can start the server and client separately:
// Terminal #1
> cd src/server
> dotnet run
// Terminal #2
> cd src/client
> dotnet ws build // or "dotnet build"
> dotnet serve
To build the solution in release mode, you can use:
> cd src/client
> npx vite build
This will build the client bundle into the top-level dist folder. You will need to manually copy over the assets folder from src/client/assets.
TODO: Document how to configure the server.