Skip to content

moostafaa/JobBoard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Job Board API

A job board backend API built with .NET 8 following Domain-Driven Design (DDD) and Clean Architecture principles.

Project Structure

The solution follows Clean Architecture principles and is organized into the following projects:

  • JobBoard.Domain: Contains the domain entities, value objects, domain events, and domain services. This is the core of the application.
  • JobBoard.Application: Contains the application services, DTOs, interfaces, and business logic.
  • JobBoard.Infrastructure: Contains the implementation of the interfaces defined in the Application layer.
  • JobBoard.API: Contains the API controllers, middlewares, and configuration for the web application.

Technologies

  • .NET 8.0
  • Entity Framework Core
  • AutoMapper
  • MediatR
  • Minimal APIs
  • Swagger

Getting Started

Prerequisites

  • .NET 8.0 SDK or higher
  • A SQL Server instance (or use the LocalDB)

Running the Application

  1. Clone the repository
  2. Navigate to the project directory
  3. Run the API:
cd src/JobBoard.API
dotnet run
  1. Access the Swagger documentation at http://localhost:5000/swagger

Features

  • Job Posting Management
  • Company Profiles
  • Job Applications
  • User Management
  • Search and Filtering

Architecture

This project follows Clean Architecture principles with a Domain-Driven Design approach. The main components include:

  • Domain Layer: Core business logic and entities
  • Application Layer: Use cases and DTOs
  • Infrastructure Layer: External concerns like database, file systems, etc.
  • API Layer: REST API endpoints using minimal APIs

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages