This page lists my personal and hobby projects. Check out my LinkedIn profile for a list of my professional work.
Frameworks and Libraries
NSwag is a Swagger/OpenAPI 2.0 and 3.0 toolchain for .NET, .NET Core, Web API, ASP.NET Core, TypeScript (jQuery, AngularJS, Angular 2+, Aurelia, KnockoutJS and more) and other platforms, written in C#. The Swagger specification uses JSON and JSON Schema to describe a RESTful web API. The NSwag project provides tools to generate Swagger specifications from existing ASP.NET Web API controllers and client code from these Swagger specifications.
NJsonSchema is a .NET library to read, generate and validate JSON Schema draft v4+ schemas. The library can read a schema from a file or string and validate JSON data against it. A schema can also be generated from an existing .NET class. With the code generation APIs you can generate C# and TypeScript classes or interfaces from a schema.
MyToolkit is a set of .NET libraries that contains a lot of useful classes for various .NET platforms like UWP/WinRT (Universal Windows Apps), Windows Phone, WPF and Silverlight. The goal is to provide missing or replace existing classes to support the development of high-quality Windows and Windows Phone applications. For example, the library provides often used MVVM infrastructure classes, missing UI controls, IoC classes, additional LINQ extension methods and much more.
NConsole is a .NET library to parse command line arguments and execute commands. If the command name or some non-optional parameters are missing, the library automatically switches to an interactive mode where the user is prompted to enter the missing parameters. Using descriptive attributes on the command class and its parameters, a nicely formatted help page can be generated.
Command line tools to manage .NET Core, Standard and SDK-style projects and solutions.
NuGet Reference Switcher is a Visual Studio extension which automatically switches NuGet assembly references to project references and vice-versa. This is useful when developing applications which reference own NuGet packages: When developing an application, switch to project references so that all code is editable and debuggable. After finishing the development, create new NuGet package versions, switch back to NuGet references and upgrade to the new NuGet versions.
Project Dependency Browser (desktop application)
Project Dependency Browser scans a directory for Visual Studio projects and shows their project, assembly and NuGet dependencies in a flexible user interface. The application also provides various filters for example to find projects which depend on a particular component.
PowerCmd (desktop application)
PowerCmd is a replacement for the native Windows Prompt with enhanced performance and additional features. The tool greatly improves script execution performance with optimized output rendering and adds features like output analysis, command buttons, improved suggestions and project directories.
Windows Desktop Applications
Visual JSON Editor is a JSON file editor which dynamically generates an editor GUI based on the provided JSON schema. The editor also acts as a demo WPF app for the MVVM classes of my library MyToolkit.
Sketchagram is a flexible diagram editing application for Windows 8 which supports touch, pen and mouse/keyboard input. When creating diagrams with a pen, the appliation leverages pattern recognition algorithms to assists the user. Right now the application is bundled with three diagram templates: flowcharts, mindmaps and UML class diagrams. The diagram editor has been developed with extensibility in mind and supports adding new diagram templates without modifying the app. It is planned to deliver more diagram templates in the future.
Windows Phone Apps
20 Minuten (official)
Kodi remote is a Windows Phone app to control your Kodi or XBMC media center.
Other Open-Source Contributions
- Exceptional for ReSharper: Extension for ReSharper which analyzes thrown and documented C# exceptions and suggests improvements.
- Microsoft Switzerland App Awards 2012: Best Media App
- Paper: MongoDB – An Introduction and Performance Analysis
- Paper: An introduction to Semantic Search in Microsoft SQL Server 2012