Code-only application development with Orchard

Topics: General, Writing modules
Aug 20, 2011 at 12:56 PM

Hello all!

I have the feeling that the question I have must have been around for a long time but I just can't seem to find a full answer to it:

Somehow Codeplex doesn't make it easy to gather all this information in one place... maybe you could just post links here to the information that can be found in different places?! Thanks a lot :-)

Developer
Aug 21, 2011 at 7:41 PM

Hi Oliver, Let me give you my experiances with Orchard, I have been developing with it for sometime, and have seen it mature over the year and a half they have been working on it.

Building modules is really easy, and the fact that everything is loosely coupled makes extensibility really easy.

For me the current pitfalls are migrations (which are good but I think there are aspects that need improving) and the learning curve is also huge, but worth it.

What do you mean by a Code-Driven approach? are you talking about a test driven approach?

Aug 24, 2011 at 10:51 AM
Thanks for your reply.

By code-driven I meant the usual development process for a web app: write - build - stage - test - deploy. I'm not used to going to an Admin console and enabling/disabling features of my app or configuring the looks of it. This is really an extension of my post http://orchard.codeplex.com/discussions/252808#post660947.

Basically, I would like to know how other web application developers go about developing with Orchard. You've mentioned that you have some experience with it, so what does your development/deployment life-cycle look like?
Aug 24, 2011 at 1:45 PM

When working with Orchard (really, any CMS) there's going to be a fair bit of metadata involved. So enabling/disabling features and configuring things is part of the normal flow.

That being said, there are things you can do to automate most of that stuff. For example, if you are writing your own module, you can have it setup the metadata for content types and parts by writing code in a Migrations class. The other thing to look into is the recipes feature. You can automate pretty much the entire setup of an Orchard site through a recipe, including which modules to install, which features to enable, and any metadata and data that you want to setup.

Aug 24, 2011 at 2:14 PM

you can also export you development evironment and import it to the live so you don't have to create a recipe manually. Pretty awesome!

Coordinator
Aug 24, 2011 at 6:29 PM

Do not forget the command-line, which is pretty awesome as a way to automate tasks as well. But in general, everything you can do from the admin, you can of course do from code (and much much more in fact).

Coordinator
Aug 24, 2011 at 6:50 PM

And migrations, too. A lot of what you can do from the admin, managing content types, can also be done from a migration. Looking at the migrations for existing modules may give you a good idea of what I mean by that.

Aug 25, 2011 at 6:07 PM
Znowman wrote:

you can also export you development evironment and import it to the live so you don't have to create a recipe manually. Pretty awesome!

@Znowman:

Could you explain what exactly you mean by that? As I understand it I can export and import the DB but that would also include my test data. Or is it possible to export just e.g. the information concerning installed modules?

@Bertrand:

Thanks again for your reply. As I see it, a mixture of Migration steps coupled with Orchard command line batches will give us the possibility to update our site to a new version.

Aug 26, 2011 at 7:18 AM

Install the export and import module and you'll see that you can select what you want to export