A MVC framwork