PPWCode .NET

PPWCode

PPWCode is a project by PeopleWare.

PPWCode .NET

PPWCode .NET is the subset of PPWCode that is targeting .NET. It consists of several libraries written in C# that are useful across custom software projects developed by PeopleWare.

Development of these PPWCode .NET libraries is done in the open, on GitHub. The source code is released as open source under the Apache License, Version 2.0.

Builds of the libraries, both stable and pre-release builds, are published as NuGet packages and are available in the NuGet Gallery. Published packages include the assembly itself and both pdb and xml files, for debugging symbols and documentation respectively.

We believe in Design By Contract and defensive code. A lot of the PPWCode libraries contain annotations or statements to express pre-conditions, post-conditions, and invariants. This is done using the JetBrains.Annotations package (annotations taken into account by the static analyzer in JetBrains Rider and ReSharper), the standard C# nullability annotations, nullable reference types, and the PPWCode.Vernacular.Contracts.I package (design-by-contract inspired assert-like statements).

Unit tests are added to verify code correctness.

Copyright 2008–2025 by PeopleWare.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.