-
Notifications
You must be signed in to change notification settings - Fork 0
Development Environment
- .NET SDK
10.0.301withlatestFeatureroll-forward. - Target framework
net10.0and C# 14. - Node.js and npm for Tailwind CSS.
- CSharpier
1.3.0as the C# formatter.
Docker builds frontend assets with Node 26.5.0; the Nix package and development shell currently use Node 22.
nix developThe shell contains .NET SDK 10, Node 22, npm, and nixfmt.
Build the deterministic simulation host, then run each Viset capture directly from the repository root:
dotnet build src/BlokeBot.Simulation/BlokeBot.Simulation.csproj --configuration Release
viset capture capture/screenshots.lua --force
viset capture capture/home-scroll.lua --force
viset capture capture/guessing-workflow.lua --forceThe Simulation environment creates a fake signed-in channel with stable sample data, keeps the
Twitch runtime offline, and needs no Twitch credentials. The capture scripts start and stop that
host and write directly to the Site-owned src/BlokeBot.Site/wwwroot/media/ directory.
The exact generated inventory is:
-
24 PNGs: every combination of device
laptoporphone, themelightordark, and viewhome,channel-setup,custom-commands,guessing-leaderboard,points-settings, oradmin, named{device}-{theme}-{view}.png. -
8 animated WebPs: every combination of device
laptoporphone, themelightordark, and workflowhome-scrollorguessing-workflow, named{device}-{theme}-{workflow}.webp.
These 32 files are the complete generated Site media inventory. Viset replaces them in place; there is no separate points workflow or copy step.
npm ci --prefix src/BlokeBot
npm run css:build --prefix src/BlokeBotFor a live rebuild:
npm run css:watch --prefix src/BlokeBotThe build script compiles Styles/app.css to the minified wwwroot/app.css. The application project also invokes the locked npm install and CSS build during its static-web-assets build.