TirsvadWeb.Portfolio.Domain 0.1.0

dotnet add package TirsvadWeb.Portfolio.Domain --version 0.1.0
                    
NuGet\Install-Package TirsvadWeb.Portfolio.Domain -Version 0.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TirsvadWeb.Portfolio.Domain" Version="0.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="TirsvadWeb.Portfolio.Domain" Version="0.1.0" />
                    
Directory.Packages.props
<PackageReference Include="TirsvadWeb.Portfolio.Domain" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add TirsvadWeb.Portfolio.Domain --version 0.1.0
                    
#r "nuget: TirsvadWeb.Portfolio.Domain, 0.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package TirsvadWeb.Portfolio.Domain@0.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=TirsvadWeb.Portfolio.Domain&version=0.1.0
                    
Install as a Cake Addin
#tool nuget:?package=TirsvadWeb.Portfolio.Domain&version=0.1.0
                    
Install as a Cake Tool

NuGet DownloadsContributorsForksStargazersIssuesLicenseLinkedIn

Logo TirsvadWeb Portfolio Domain library

TirsvadWeb.Portfolio.Domain is a .NET class library that provides a robust, extensible domain model for portfolio and resume management systems. It defines core entities such as Person, Project, Education, Skill, and WorkExperience, supporting strong typing, validation, and clean architecture principles. The library is suitable for use in web applications, APIs, or any .NET-based solution requiring structured portfolio data.

Table of Contents

Getting Started

Prerequisites

  • Dotnet 9.0 or later

Installation

The TirsvadWeb.Portfolio.Domain library can be installed in several ways:

NuGet Package
dotnet add package TirsvadWeb.Portfolio.Domain

Then, run your package manager's install command to download and install the module.

Clone the repo

Repo size

git clone git@github.com:TirsvadWeb/Dotnet.Portfolio.Domain.git

๐Ÿ“‚ Folder Structure

TirsvadWeb.Portfolio.Domain/
โ”œโ”€โ”€ ๐Ÿ“„ docs                                // Documentation files
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ doxygen                         // Doxygen output
โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ images                              // Images used in documentation
โ”œโ”€โ”€ ๐Ÿ“‚ src                                 // Source code for the library
โ”‚   โ””โ”€โ”€ ๐Ÿ“ฆ TirsvadWeb.Portfolio.Domain     // Main library folder
โ”‚       โ”œโ”€โ”€ ๐Ÿ“ฆ Entities                    // Contains domain entities
โ”‚       โ”œโ”€โ”€ ๐Ÿ“ฆ Exceptions                  // Custom exceptions for the domain
โ”‚       โ”œโ”€โ”€ ๐Ÿ“ฆ Interfaces                  // Interfaces for domain services
โ”‚       โ”œโ”€โ”€ ๐Ÿ“ฆ Services                    // Domain services
โ”‚       โ””โ”€โ”€ ๐Ÿ“ฆ ValueObjects                // Value objects for the domain
โ””โ”€โ”€ ๐Ÿ“‚ tests
    โ””โ”€โ”€ ๐Ÿงช TestDomain                      // Unit tests for the library
        โ”œโ”€โ”€ ๐Ÿงช Entities                    // Contains tests for domain entities
        โ”œโ”€โ”€ ๐Ÿงช Exceptions                  // Tests for custom exceptions
        โ”œโ”€โ”€ ๐Ÿงช Interfaces                  // Tests for domain interfaces
        โ””โ”€โ”€ ๐Ÿงช Services                    // Tests for domain services

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Bug / Issue Reporting

If you encounter a bug or have an issue to report, please follow these steps:

  1. Go to the Issues Page
    Navigate to the GitHub Issues page.

  2. Click "New Issue"
    Click the green "New Issue" button to create a new issue.

  3. Provide Details

  • Title: Write a concise and descriptive title for the issue.
  • Description: Include the following details:
    • Steps to reproduce the issue.
    • Expected behavior.
    • Actual behavior.
    • Environment details (e.g., OS, .NET version, etc.).
  • Attachments: Add screenshots, logs, or any other relevant files if applicable.
  1. Submit the Issue
    Once all details are filled in, click "Submit new issue" to report it.

License

Distributed under the AGPL-3.0 License.

Contact

Jens Tirsvad Nielsen - LinkedIn

Acknowledgments

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net9.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0 116 7/4/2025