This repository is a .NET 6 + Vue 3 split-stack S7 PLC simulator.
WIDESEAWCS_S7Simulator.Core: domain entities, memory regions (M/DB/I/Q/T/C), simulator runtime, persistence.WIDESEAWCS_S7Simulator.Application: application-layer abstractions and protocol/application services.WIDESEAWCS_S7Simulator.Server: ASP.NET Core Web API (Controllers/, Program.cs), runtime data under Data/.WIDESEAWCS_S7Simulator.Web: Vue 3 + TypeScript frontend (src/views, src/api, src/router, src/types).WIDESEAWCS_S7Simulator.UnitTests: xUnit tests for core/application behavior.docs/: design and protocol notes.Run from repository root unless noted.
dotnet restore WIDESEAWCS_S7Simulator.slnx: restore NuGet packages.dotnet build WIDESEAWCS_S7Simulator.slnx: build backend projects.dotnet test WIDESEAWCS_S7Simulator.UnitTests: run xUnit tests.dotnet run --project WIDESEAWCS_S7Simulator.Server: start API (default http://localhost:5137).cd WIDESEAWCS_S7Simulator.Web && pnpm install: install frontend deps.cd WIDESEAWCS_S7Simulator.Web && pnpm dev: start Vite dev server (typically http://localhost:3000 or 5173).cd WIDESEAWCS_S7Simulator.Web && pnpm build: type-check + production build.PascalCase for types/methods, camelCase for locals/parameters, interfaces prefixed with I.PascalCase for view components (e.g., DetailsView.vue), camelCase for variables/functions, keep API DTO types in src/types.Microsoft.NET.Test.Sdk, coverlet.collector).MemoryStoreTests.ReadBit_ReturnsExpectedValue.dotnet test before opening a PR.feat: ..., fix: ..., refactor: ... (Chinese summaries are acceptable).dotnet test, pnpm build), and screenshots/GIFs for UI changes.