Skip to content

Development Setup

Yasunobu edited this page Jun 26, 2026 · 1 revision

Development Setup

The toolchain is pinned with mise and tasks are driven by just. Everything — the .NET SDK and just itself — is version-locked in mise.toml, so your machine and CI use exactly the same versions.

Prerequisites

Tool Version How it's provided
Windows 10 (1809+) / 11 The app is a Windows desktop app
mise any recent You install this once
.NET SDK 10.0.300 Pinned by mise.toml; installed via mise install
just 1.51.0 Pinned by mise.toml; installed via mise install
Git Bash bundled with Git for Windows just runs recipes through bash (see Building & Tasks)

mise.toml:

[tools]
dotnet = "10.0.300"
just = "1.51.0"

First-time setup

# 1. install mise (see https://mise.jdx.dev/getting-started.html), then:
git clone git@github.com:P4suta/keep-pressing.git
cd keep-pressing

# 2. install the pinned toolchain (.NET 10 + just)
mise install

# 3. build and test
just build
just test

Why mise x -- dotnet

The just recipes invoke the SDK as mise x -- dotnet … rather than a bare dotnet. mise x -- resolves the pinned .NET version from mise.toml and runs that exact SDK, regardless of any system-wide dotnet on PATH. This is what keeps local builds bit-for-bit aligned with CI, which uses jdx/mise-action to set up the same versions.

Running the app during development

KeepPressing is an unpackaged WinUI 3 app (WindowsPackageType=None), so the canonical way to run it is to launch the built executable directly:

KeepPressing/bin/<config>/net10.0-windows10.0.26100.0/win-x64/KeepPressing.exe

(after a just build). You don't need to deploy an MSIX package.


Next: Building & Tasks · Architecture

Clone this wiki locally