- Joined
- Jul 28, 2009
- Messages
- 983
- Reaction score
- 133
Hi,
I'm here to announce my project called Rover CMS.
RoverCMS is build in ASP.NET MVC 4 and uses the Entity Framework with repositories to connect to the database.
The CMS will be build in multiple layers. I'll build providers that have common functionality so that developers can easily build their own themes without coding everything from scratch. There will also be a service layer. This is the functionality from the controllers, but to avoid fat controllers this functionality
will be moved to a service layer that can be modified.
The default theme is based on various themes. All the themes are made from scratch with bootstrap but they are based on existing themes. (Habmoon, Artic Hotel)
I'm using a basic plus emulator base, so the cms should be compatible with most of the emulators out there.
At the moment i am still working on the designs for the CMS.
Here is a list of features the CMS will have.
Base:
- Entity Framework 6
- Bootstrap (Response website)
- MVC 4
- SignalR
- AutoFac (Dependency injection)
- AutoMapper (Mapping database entities to viewmodels)
- RequestReduce
- Caching
Website features:
- Realtime chatting with friends and groups trough websockets (SignalR)
- Themes (Create your own controllers/models/view/static content)
- Register with social networks (twitter & facebook)
- Auction system
- Lottery system
- Shouts system
- News system
- Campaings system
- Help system
- Friends Online
- Badge shop
- Furniture Shop
- Bot shop
- Rare furniture exchange value
- Default stuff (login, register, settings etc)
As you see this is a big list, it will take some time to develop all these features.
I don't have an estimated time of when this is all done.
Unfortunately i haven't got much time to work on this because i have an internship for 6 months.
So it will be a evening and weekends project.
Screens
Snippets
Code:
private IEnumerable<ControllerModel> LoadControllers()
{
// Initialize a collection of controllermodels
var arrayTempControllers = new Collection<ControllerModel>();
// For every assembly in this domain
foreach (var assembly in Assemblies)
{
// Foreach type in this assembly
foreach (var exportedType in assembly.GetExportedTypes().Where(type => !type.IsAbstract && type.BaseType != null && type.BaseType == typeof(System.Web.Mvc.Controller)))
{
// Controller name
string controllerName = exportedType.Name.Replace("Controller", "");
// Check if this controller hasn't been added yet
if (arrayTempControllers.All(x => !x.ControllerName.Equals(controllerName)))
{
// Create the instance and add the controller to the list
arrayTempControllers.Add(new ControllerModel
{
ControllerName = controllerName,
Controller = (System.Web.Mvc.Controller)Activator.CreateInstance(exportedType)
});
}
}
}
return arrayTempControllers;
}
Git:
You must be registered to see links
I'll keep you guys up to date.
Attachments
You must be registered for see attachments list
Last edited: