Introducing Actya – a .NET CMS that doesn’t get in your way

Actya is a simple open source ASP.NET MVC Content Management System (CMS).

Why on earth would we need another CMS?

Quite often, a CMS is chosen as application framework for custom application development because you’ll get a lot for free: navigation, security and content management (obviously). Custom applications are then developed as modules that run within the context of the CMS. Cuyahoga, the CMS I’ve started  8 years ago works exactly like this.

Rob Conery describes an issue with this solution:

I’ve deployed Big CMS’s before as a solution for clients and every single time we decided to move away. They’re great for getting off the ground – but after a while there’s jus too much friction.

And that’s probably what many of us experience: a CMS gets in the way when your main focus is the custom application. This is the single main reason to create Actya: a CMS that doesn’t get in your way when doing custom development.

CMS as add-on

Actya can act as an add-on library for your application. While developing your custom application in Visual Studio, you can add it with NuGet just like any other library. The first time you run your application after adding Actya, an installer kicks in to ask you where you want to have your CMS data stored, what theme you want to use and which account is the CMS administrator. No further configuration required and nothing has to change in your custom application.

The video below shows this scenario with NuGetGallery as the ‘custom’ application:

Even though Actya is mainly designed to act as an add-on CMS, you can also use it as a simple regular CMS. Download it at from CodePlex downloads page, point an IIS 7+ web site or application to the extracted files, open de site in your browser and the installation starts automatically.

After installation, you can access Actya’s admin pages at http://my-host-or-application/cmsadmin.

RavenDB document database

Here’s the other reason for creating Actya: schema-less NoSQL databases are considered to be ideal for CMS applications because you can put any type of content in it without having to alter a database schema or have some kind of monstrous Entity-Attribute-Value model. I wanted to experience if that claim is true.

Actya uses the .NET NoSQL database RavenDB and it really makes development easier. Not only due to the flexibility of the schema-less design but also to the absence of a mapping layer. Wonderful! A cool feature of RavenDB is the embedded mode where you don’t need a database server at all. Actya uses this mode by default (the data goes in App_Data), but can also connect to an existing RavenDB server.

Requirements

  • ASP.NET 4.0
  • Full-Trust environment

Wanted: Feedback

I’ve released the first alpha version to see if anybody finds this CMS useful. Your feedback will have a have a lot of weight in determining future development. If you have any, please go to http://actya.codeplex.com/discussions and open a discussion with ‘User Feedback’ as topic.

6 thoughts on “Introducing Actya – a .NET CMS that doesn’t get in your way

  1. hjm

    (there is no user feedback on the mentioned page, so here it goes)

    Altough I like RavenDB, it is a licensed commercial package. Are there options to integrate other more free solutions? Or since your CMS is free, are you allowed to use the RavenDB also for free?

  2. martijn Post author

    Usage of RavenDB is free for OS projects, see http://ravendb.net/licensing. As far as I understand this means that you can use RavenDB in combination with Actya for free but as soon as you’re going to do other things with that same Raven server in a production environment, you have to pay a license.

  3. Apostol

    I think that the RavenDb license will be a problem for the CMS.

    If you want to target the casual, normal website the 25$ per month or 600$ is too much a cost(as compared to the most CMS systems – free). The value for those websites maybe relatively low too – small websites doesn’t need much customization.

    Maybe if you target bigger websites and you manage to make the CMS so it has some of the great features of bigger CMS but really doesn’t get in the way of custom development, then maybe you’ll get a nice thing. Not a small task ahead of you thought.

  4. martijn Post author

    @Apostel I’m going to look after this properly, but I truly believe that you don’t have to pay for a RavenDB license when used in combination with Actya. RavenDB’s license is just like MySQL’s and I don’t think that WordPress or Drupal users pay for MySQL.

Comments are closed.