Skip to content

This project illustrates a simple web service application that expands on the CatchUp web application, allowing users to register favorite news sources. The RESTful API is built using ASP.NET Core and Entity Framework Core, wiht a MySQL database backend. It also applies the Domain-Driven Design approach.

License

Notifications You must be signed in to change notification settings

upc-pre-202520-1asi0730-7469/catch-up-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Catch-Up Platform (catch-up-platform)

Overview

Catch-Up Platform is a small ASP.NET Core service that provides an API to manage users' favorite news sources. The project demonstrates a clean package structure separated into bounded contexts (news and shared) and follows simple command/query service patterns with Entity Framework Core persistence.

Features

  • List favorite sources scoped to a News API key
  • Retrieve a favorite source by its identifier
  • Retrieve a favorite source by News API key + source id
  • Create (persist) a new favorite source
  • Custom ASP.NET Core route naming convention to use kebab-case for API routes
  • Custom Entity Framework naming strategy to convert identifiers to snake_case and plural table names.

Technologies

  • C# 12+ and .NET 9
  • ASP.NET Core (REST controllers)
  • Entity Framework Core
  • PlantUML (architecture diagrams in docs/)

Technical stories

The API-focused technical stories for frontend integration are in docs/user-stories.md.

Class diagram

A PlantUML class diagram that reflects the code structure and bounded contexts is available at docs/class-diagram.puml.

Getting started (quick)

To run the application locally (recommended: macOS / Linux / Windows):

dotnet run --project CatchUpPlatform.API

Or from the API directory:

cd CatchUpPlatform.API
dotnet run

Or build and run the dll:

dotnet build
dotnet run --project CatchUpPlatform.API

About

This project illustrates a simple web service application that expands on the CatchUp web application, allowing users to register favorite news sources. The RESTful API is built using ASP.NET Core and Entity Framework Core, wiht a MySQL database backend. It also applies the Domain-Driven Design approach.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published