Archient is a set of code libraries (frameworks) that aim to enable developers through simple and consitent access to .NET technologies. Principles include:
- Implementation consistency
- Development guidance
- Rapid development
- Minimize code "plumbing"
- Strategic use of package dependencies
- Auto-versioning of assemblies for local developer machines and TFS Build on top of Wintellect TFS Build
- Automated documentation through Sandcastle
- Automated NuGet packaging
- F# as a real-world solution, even for C# package consumers
- F# Signature files to separate code contracts and documentation from their implementation. This is useful for technical leads to create a specification that developers can implement.
All libraries are currently in experimental "alpha" stage.
- Contracts: A core set of interfaces shared by Archient's libraries.
- MVC: Similar functions as Web API for consistent web applications.
- Routing, Filtering, and Area functions
- Startup functions
- View virtualization - Host your views in CMS, cloud storage, or a database!
- Web API: Routing and application startup functions for consistent web implementations
- Razor: Planned helper library for embedded CMS. A simple wrapper on top of Microsoft Razor for ASP.NET. *The Microsoft Razor vNext library is actually included until a stable release is made available.
- Web Host: Aims to simplify web application hosting between MVC, Web Forms and Web API. ASP.NET vNext will drastically improve the solution, but many of us will be running .NET 3.5, 4.0, and 4.5 for years to come.
- WCF Client: Utility functions for calling WCF services, encapsulating the scope of building up and tearing down client proxies
- WCF Services: Provides "Ping" and "Health Check" service and data contracts for building consistent services
- Leap Motion: A simple wrapper over the Leap Motion device's "Controller", extending the API with Reactive Extensions (Rx) for a simple subscription-based model of gesture interactions.
- Xunit: A simple library of F# function wrappers on top of Xunit to help make F# testing look like F# code
In the near future, Archient will provide a set of quick-start project templates and item templates along with helpful "Wizard" functions to improve the consistency and quality of your .NET project development.
- A replacement of other popular libraries
- Archient does not try to supplant other guidance, like Microsoft's Enterprise Library Patterns and Practices
Where possible, Archient will extend existing libraries as optional package dependencies to your project. For example, if you need a general definition and/or implementation of a coding pattern, Archient will seek to provide it. If you want a specific implementation of that pattern, Archient will attempt to either work with other package developers to implement the core patterns or to provide a wrapper package with an adapter implementation of that specific implementation mapped to the core pattern definitions in Archient.