GithubHelp home page GithubHelp logo

pulsarblow / dotnetcore-boilerplate Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 118 KB

✏️ A lightweight .NET Core Class Library boilerplate, stripped to its bare minimum, powered by an optimized build system.

License: MIT License

Shell 20.79% C# 79.21%
dotnetcore boilerplate coverlet continuous-integration continuous-deployment github-actions github-packages hacktoberfest

dotnetcore-boilerplate's Introduction

.NET Core Boilerplate

.NET Core Boilerplate

A lightweight .NET Core Class Library boilerplate, stripped to its bare minimum, powered by an optimized build system

Release Continuous Integration

.NET Core Boilerplate is a boilerplate you can use to rapidly boostrap a .NET Core Class Library. It is a polished empty shell (no functional behavior) which helps to enforce good project layout practices.
It is designed with a complete CI/CD flow targeting a public Nuget package publication.

👟 Getting started

Prepare your environment

Build and test

Start by cloning the repository

git clone https://github.com/PulsarBlow/dotnetcore-boilerplate

Build

dotnet build

Test with coverage

Note that the "XPlat Code Coverage" data collector friendly name cannot be changed. It is a constant name embeded inside the Coverlet data collector we use to collect code coverage.

$ dotnet test --collect:"XPlat Code Coverage" --settings ./build/coverlet.runsettings -r .build/

Publish package

The package publication workflow is Github Flow based. That is, the master branch is always deployable.

When you create a new Github release, a Github event is triggered at the repository level and caught be the Github Actions underlying system. Github actions checks if there is a workflow bound to that event and run it if it finds one.

See the Release workflow file for more details

🎛 Project properties

To improve maintainability of project dependencies and configuration attributes, global properties have been exported into importable *.props files:

./props
├- package.props            # Nuget package project properties
└- common.props             # Common properties for any project (class lib, test, packable, not packable..)
   ├- dependencies.props    # Shared dependencies, easier to align dependency version across projects
   └- version.props         # Share version, easier to align version across projects

🦄 Attributions

.NET Core Boilerplate icons made by Smashicons from Flaticon

dotnetcore-boilerplate's People

Contributors

pulsarblow avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.