Lynicon ASP.Net MVC code oriented CMS


#1

I built this CMS as a result of frustration with existing .Net CMSs. I wanted to make it align seamlessly with ASP.Net MVC, my favourite web development platform. I also wanted to make it a code library which you add to a website to provide CMS functionality, not a prebuilt website into which you enter data and modify with code snippets and scripts. It’s now on NuGet as a single package and in GitHub at https://github.com/jamesej/lynicon. It’s been battle tested as the foundation of the complex, high-traffic consumer websites greatbritishchefs.com and greatitalianchefs.com.

The result is an unusual and highly productive CMS architecture which is focussed on helping developers build websites with powerful CMS functionality quickly rather than on allowing non-technical people to create websites.

CMS functionality is introduced by using a special MVC route, the CMS provides the content data as a parameter to the MVC action method. Content types are just C# types and can have lists and subtype properties, and use inheritance and interfaces. The CMS extends the editor scaffolding system within MVC already to generate a general editor form for any such type.

A totally pluggable data layer has default providers that store data via Entity Framework DbContext, but can quite easily be customised, for instance I built an online example page which stores its content data in a cookie.

User management is also provider based, by default using ASP.Net Identity.

By design the CMS can potentially be added into pretty much any existing ASP.Net MVC site.

A very powerful module system includes some novel features. I have built caching, publishing, url management, content deployment all as modules which will be released later as a paid for addon, but all of which can be added or left out as required, letting you simplify the UI and remove overhead from the CMS performance whereever you don’t need functionality.

The core module is open source (actually Fair Source 10). I trust there is no problem with that for posting here but let me know if not.

I would greatly appreciate any comments, either here or email james@lynicon.com.


.NET Foundation Website | Blog | Projects | Code of Conduct