C# / SYSTEMS / FIELD NOTES

.NET applications and systems

Web and desktop apps, internal tools, Outlook and Excel add-ins, and dependable business logic.

I model the rules first

In .NET applications, most of the work happens beneath the surface: domain rules, data, permissions and failure paths. The interface matters, but a well-shaped model is what lets it stay simple.

Evil Alchemist: C# beyond the usual web

Evil Alchemist is an original turn-based roguelite where most of the work lives in rules, data and tools. It shows how I use .NET to build a domain independent from the game engine.

FIELD NOTE

DOMAIN

Mechanics do not depend on a scene

A clean .NET 8 domain stays separate from Godot. Combat, status, reaction and progression rules can be tested and evolved without mixing logic with presentation.

DATA

Balance lives in a versioned model

Ingredients, recipes and encounter configuration live in JSON. Experimenting with 162 alchemy combinations does not require rewriting scenes or control code.

TOOLING

Validation before runtime

GameContentValidator and a dedicated audit check recipe completeness and cross-catalog references. Separate knowledge profiles, checkpoints and three save slots are designed into the system.

CampusPBnet: bring academic life into one system

CampusPBnet started with a practical observation: academic information is scattered across email, groups and ad-hoc channels. I designed a platform that brings communities, publishing and permissions into one model.

FIELD NOTE

PROBLEM

An academic structure needs a data structure

A user may belong to a faculty, a student society and a smaller project group. Communities are therefore hierarchical, can be open or approval-based, and have their own sections and visibility rules.

MY RESPONSIBILITY

From domain model to working interface

As the concept owner and implementation author, I carried the project through its data model, authentication, views, search and moderation. I also built four publication types: news, discussions, polls and location-aware events.

ARCHITECTURE

Permissions are part of the domain, not an add-on

ASP.NET Identity handles identity, while roles inside a community stay independent and granular. EF Core enforces relationships, indexes, constraints and concurrency. User content is sanitized and banners are cropped and compressed before storage.

.NET 8 shop: from catalogue to order

The “Buły i Bagiety” shop was an exercise in building a complete buying flow, not just a catalogue view. Every feature, from categories to the admin panel, had a place in one coherent system.

FIELD NOTE

CUSTOMER EXPERIENCE

A catalogue that leads to a decision

I implemented search, price and stock filters, promotions, new products and a recursive category tree. A PDF price list can be generated for a category and its children without assembling a document by hand.

CART AND CHECKOUT

Data integrity at the important moment

A dedicated CartService manages the account-based cart. Before checkout the system validates customer details and stock; after confirmation it updates quantities and keeps order history with a reorder path.

BACK OFFICE

Administration without bypassing rules

The admin panel covers products, category hierarchy, orders, users and basic analytics. Image uploads pass through ImageSharp, while roles, anti-CSRF tokens and server validation protect data-changing operations.

Technology follows the constraint.

The stack below is a map of the examples on this page, not a shopping list. I choose only what the problem can justify and what the next person can maintain.

  • C#
  • .NET
  • ASP.NET Core
  • REST API

NEXT ITERATION

Have a similar problem to untangle?

Tell me what should work better. I will help turn the first conversation into a realistic scope and a maintainable solution.

I WANT A FREE DEMO