Ministry of Technology
Show Menu

Open Source Projects

Welcome to The Ministry of Technology open source projects. All open source Ministry of Technology products are distributed under the MIT License for maximum re-usability.

The Ministry of Technology either authors or is involved with the following open source projects related to 'Library'…

Show all projects

API Security

.net Standard 2.0 / C#

APIs can be secured in various ways. The Ministry.Web.ApiSecurity package supports 3 distinct forms of API security. Multiple forms of security within a single API can be supported but not, generally, on a single method. This allows internal use and external use applications of APIs in a secure manner.

Argument Guard

JavaScript (ES5)

This project provides simple guard methods for throwing appropriate type errors when arguments are incorrect.


.net Framework 4.5+ / .net Standard 1.6 / C#

This project provides a suite of extension methods that enable fluent, functional style coding when manipulating objects. Extensions are split for Collections, Compositions and Projections. All projections are guaranteed 'Pure' in a functional sense.


.net Framework 4.5+ / .net Standard 1.6 /C#

This project provides a Generator for building CSV objects from files and vice versa. The CSV object structure is very simple and string orientated, reflecting the nature of the CSV file itself, with Rows and Cells modelled as their own classes. There is no strong typing involved.

Date Time Abstractions

.net Framework 4.0+ / .net Standard 1.0 / C#

This project provides a DateTimeAccessor class, with matching interface, which allows you to obtain the current DateTime object. This allows you to inject the accessor through Dependency Injection and mock the return value for accurate testing.

Fluent Guard

.net Framework 4.0+ / .net Standard 1.0 / C#

This project provides simple extension methods for handling argument validation in a fluent form. This allows for complex error handling within simple arrow functions.

Model Builder Abstractions

.net Standard 1.0 / C#

This project provides several abstract interfaces which can be used for pattern structure for Builders when constructing Models. This ensures a common adoption of the Builder pattern between your business and model layers, making testing easier.

Reflection Helper

.net Framework 4.5+ / .net Standard 1.6 / C#

Makes the process of Reflection in .net much easier to code than it is using the standard methods provided by the framework by applying core features through a simple API.

Simple Twitter Stream

.net Standard 2.0 / .net Framework 4.5 / C#

This library is designed to provide a simple, strongly typed, twitter feed. It sits on top of the LinqToTwitter library. It provides the twitter feeds that you see on this website.

Strong Typed

.net Framework 4.0+ / C#

Base classes for generating strongly typed access to traditionally simple object or string type stores, such as ASP.Net Session state and the matching interfaces and test fakes to enable simple unit testing scenarios for the same.

Test Support

.net Framework 4.5+ / C#

Provides a suite of Fakes, Mocks and assertion classes that make the process of testing easier. This is not exclusively for unit testing either, the libraries also support console automation testing.

URI Path Manager

JavaScript (ES5)

This project provides simple functions for working with paths.

Web Theming

.net Standard 2.0 / C#

This project allows you to apply themes to a website based on configured values and host URLs. This is achieved by providing simple configuration data.

WebDriver Extensions

.net Framework 4.5+ / .net Standard 2.0 / C#

Provides a basic styled framework to build a page structured model for writing UI Automation tests against.

Window Wrapper

JavaScript (ES5)

This project provides a simple wrapper for stubbing out window.location calls.

Visit us on GitHub