§01
Overview
- What it is: A repository of iiko POS plugins on Resto.Front.Api (.NET/C#/WPF): official sample plugins (CustomerScreen, CashRegister, Payment, Scale, SamplePlugin) + a custom CustomWebserver — a plugin that embeds an HTTP server into iikoFront and launches external "OrderTablo" (order display board for client/kitchen) and "SalesPlan" windows. "Tablo" = display board.
- Type / status / role: other (desktop POS plugin, Windows/.NET) · active · contributor — the user has 3 commits (systems features), main author is Shahzod (13).
- Activity period: 2026-03-17 → 2026-05-05 (~1.5 months), 16 commits.
§02
Stack
- C#/.NET + iiko Resto.Front.Api (iikoFront plugin architecture), WPF (CustomerScreenWindow.xaml, resources/localization for ~20 languages), VS solution (
Resto.Front.Api.Samples.VS15.sln). - Projects: CustomerScreenPlugin (WPF customer screen + order ViewModel), SampleCashRegisterPlugin, SamplePaymentPlugin, SampleScalePlugin, SamplePlugin/CustomWebserver (custom build — where the user contributed).
- Connection: part of the iiko-integration ecosystem (cf. Resto.Front.Api.CustomWebServer — task #3; salesplan — #61).
§03
Technical challenges
Confirmed by diffs of the user's commits:
- Child-process lifecycle via Windows Job Object (
ChildProcessTracker.cs): the classic Win32 problem of "orphaned processes when the parent crashes" solved by assigning child windows (OrderTablo/SalesPlan) to a Job Object with the kill-on-close flag. → real systems-level Windows programming, not CRUD. - Embedded webserver in a POS plugin (
CustomWebserver.cs): the iikoFront plugin hosts an HTTP server to serve order data to external displays. → integration into a foreign closed-source POS runtime. - Proper resource cleanup (dispose pattern + state dump to a file): the plugin closes spawned windows and dumps orders to disk on unload. → care for plugin reliability inside the host process.
- Cashier audit (RuntimeIdentityLogger): logging operator identity. → retail-compliance requirements.
§04
AI-assisted development
- Sessions found: 1. The repo has
.claude/settings.local.json. - What was done with AI: likely C# plugin development/debugging with Claude Code (not sampled in detail).
- AI-workflow patterns: AI-assisted .NET development.
§05
Achievements & metrics
- Systems features of an iiko plugin: Job Object lifecycle, embedded webserver, audit logs, order dump.
- WPF customer screen with ~20-language localization (sample heritage).
- C#/.NET + Win32 systems programming in a production POS.