DelphiMVCFramework is now Open Source!

delphimvcframework

Yes, just after 1 year of development, and a couple of big projects developed with it, the DelphiMVCFramework has been published as OpenSource.

The project is on google code svn https://code.google.com/p/delphimvcframework/

I’ll talk about it at ITDevCon2013 (http://www.itdevcon.it)

In the trunk there are many samples and I’m planning to put many others.

Main DMVCFramework features

  • RESTful (RMM Level 3) compliant
  • Server side generated pages using eLua (Embedded Lua)
  • Messaging extension using STOMP (tested with Apache Apollo and Apache ActiveMQ)
  • Can be used in load balanced environment using memcached (memcached.org)
  • Fancy URL with parameter mappings
  • Integrated RESTClient
  • Works with XE4 and XE5 (tested, but should works also on XE3 and XE2)
  • Experimental support for IOCP
  • Simple, but very very simple, to use…

It contains also a lot of indipendent code that can be used in other kind of projects.

These are the most notable:

  • Mapper (convert JSON <=> Object, ObjectList <=> JSONArray, ObjectLists <=> DataSets)
  • LuaBinding (integrate Lua script into Delphi native code)
  • LuaTextFilter (convert eLua into plain Lua executable script just like JSP)
Currently DMVCFramework use Embarcadero WebBroker framework, but is not tied to it. I’m working on a version that use IOCP (that is 10 times faster than plain WebBroker) and other web libraries for Delphi.
Code is enough stable and is already used in big production system.
WARNING!
There are a couple of bugs that affect WebBroker and so, DMVCFramework.
In our system, I’ve applied some patches to solve these problems. If you need those patches, ask me (I cannot publish the full code because it is Embarcadero licensed code).
The bugs are:
And another bug that affect also DataSnap and TIdHTTPWebBrokerBridge based projects.
Code is tested on XE4 and XE5 but should works also on XE3 and XE2.

5 thoughts on “DelphiMVCFramework is now Open Source!

  1. I started doing some testing with DMVCFramework and found it very good. Easy to work with and a very acceptable performance.

    I only have a few questions:

    1 – What is the best way to work with user authentication?
    2 – Are there mechanisms and SSL encryption?

  2. I started doing some testing with DMVCFramework and found it very good. Easy to work with and a very acceptable performance.

    I only have a few questions:

    1 – What is the best way to work with user authentication?
    2 – Are there mechanisms and SSL encryption?

  3. @Pol
    Thank you!

    @ezequieljuliano
    1. Currently there is no support for Basic Authentication and other kind of standard schemes. However, you can use the so called “form authentication” where client send the username and the password in some way (headers, request body etc) over a secure socket connection and the server creates a session is username and password are ok. You can check in ActionFilter method of your controller (OnBeforeRequest) if the current user is logged.

    2. DMVCFramework use (but it is not tied) WebBroker, so the normal way in which you create ssl server, you can create ssl DMVCFramework server. You can start using the Delphi built-in wizard.

  4. @Pol
    Thank you!

    @ezequieljuliano
    1. Currently there is no support for Basic Authentication and other kind of standard schemes. However, you can use the so called “form authentication” where client send the username and the password in some way (headers, request body etc) over a secure socket connection and the server creates a session is username and password are ok. You can check in ActionFilter method of your controller (OnBeforeRequest) if the current user is logged.

    2. DMVCFramework use (but it is not tied) WebBroker, so the normal way in which you create ssl server, you can create ssl DMVCFramework server. You can start using the Delphi built-in wizard.

Comments are closed.