Skip to content

marlenhalvorsen/KAW

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

.NET Build & Test .NET License

KAW – North Jutlandic Dictionary of kaw’e Expressions

KAW is a word from the North Jutland dialect. It describes something difficult, heavy, or a bit troublesome – e.g., a kaw case.

This microservice currently handles CRUD operations for user-submitted expressions. The project focuses on architecture, testability, and CI — domain complexity may grow over time.

Tech Stack

  • .NET 8
  • Entity Framework Core
  • xUnit + Moq
  • GitHub Actions (CI)

Continuous Integration & Branch Policy

All code changes go through Pull Requests against the master branch.
Each PR triggers the .NET Build & Test GitHub Actions workflow, which must pass before merging.
Branch protection rules ensure that:

  • The PR branch is up to date with master
  • All checks (build & tests) pass successfully
  • No direct pushes are allowed to master

This setup keeps the master branch stable and production-ready at all times.

Project Structure

This solution follows a layered (hexagonal) architecture:

  • Domain – Core entities and models
  • Application – Business logic, services, interfaces
  • Infrastructure – EF Core, repositories, and persistence
  • Web – (Coming soon) API layer

🛈 The previous console app used for manual testing has been removed to keep the solution clean and focused.

Purpose

I use the project as a learning ground to:

  • Revisit C# fundamentals
  • Work with Hexagonal architecture (Domain, Application, Infrastructure, Web)
  • Apply SOLID principles in practice
  • Develop iteratively: starting as a console app, later evolving into a Web API
  • Ensure quality with testing

Status

  • Basic structure (Domain, Application, Infrastructure)
  • Repository implementation
  • In-memory list with methods
  • EF Core integration
  • Refactor repo and service for DbContext
  • API endpoints

Getting Started

Quick setup guide for running KAW locally.

Prerequisites

Clone & Build

git clone https://github.com/MarlenHalvorsen/kaw.git
cd kaw
dotnet restore
dotnet build --configuration Release
dotnet test --configuration Release

About

KAW is named after a North Jutland dialect word meaning a tricky or troublesome thing. The project serves as a focused learning playground for clean architecture, testing, and CI, evolving from simple prototypes into a structured, stable backend.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages