Dependencies and Libraries
This section enumerates the dependencies used in the Orchard project, with a brief description of what Orchard makes use of.
Since Orchard v1.10 the preferred method of including dependencies is via NuGet. All dependencies that have NuGet packages have been migrated to use this system and they can be found in the solution-wide
.\src\packages\ directory. Remaining dependencies can be found in the
Before v1.10 you will find all copies of the dependencies located in the
.\lib\ directory of the source repository, along with their respective licenses.
You can also view the attributions for our library dependencies in the CREDITS.txt file at the root of the Orchard source tree.
Note: For the most up-to-date list of dependencies you should consult the source repository directly.
This is the default spam protection service in Orchard.
This is a language recognition tool, which provides a framework for constructing recognizers, interpreters, compilers, and translators from grammatical descriptions containing actions in a variety of target languages.
ASP.NET MVC 5
ASP.NET MVC is used as the web programming model.
Autofac & Autofac contrib
Dependency Injection is used heavily internally, mainly for publishing and consuming services between the Orchard.Web host and the Orchard packages.
Orchard uses Castle Windsor for type proxy generation and logging support.
Client-side code colorization.
The DLR can be optionally used to script certain aspects of Orchard (currently, widget layer rules).
Eric Meyer's Reset CSS
This is used to even the CSS rendering playing field across browsers.
Fam Fam Fam Silk Icons
The Orchard user interface uses Silk Icons, which is an icon set containing over 700 16-by-16 pixel icons in PNG format.
Orchard uses Fluent NHibernate, which lets you write object-relational mappings in strongly typed C# code.
This library is a fluent wrapper around System.IO that we use in some tests.
Html Agility Pack
Flexible HTML parsing and querying.
Provides Html 5 helpers.
jQuery & jQueryUI, jQuery ui.timepickr, jQuery utils, jQuery ScrollTo
We use jQuery to progressively improve the user experience in Orchard.
Log4Net is a tool used in Orchard to help write log statements to a variety of output targets.
Full-text search and indexation engine.
Microsoft SQL Server Compact 4.0, SQL Server, SQL Server Express
Orchard uses SQL Compact by default for database access but can also use SQL Server and SQL Server Express.
The moq library is used when object moqs are needed for writing unit tests.
NHibernate & dependencies, FluentNHibernate, NHLambdaExtensions, LinqNHibernate
Orchard uses NHibernate, Fluent NHibernate and Linq To NHibernate for data access.
NuGet is used as the package manager (modules and themes come in the form of NuGet packages).
NUnit is used for writing unit tests.
SharpZipLib is used for zipping/unzipping files. For example, the Orchard media manager module uses this library to unzip uploaded media files.
This BDD-style library is used in Orchard for integration tests.
Orchard uses the Tesi.collections library, which supports a SET collection that contains no duplicates.
TinyMCE is currently used for editing CMS pages content.
WCat is a lightweight HTTP load generating tool used for performance testing.
We use parts of YUI for easier CSS.