New features in the next BlogEngine.NET

by Mads Kristensen 28. March 2008 05:25

It’s been awhile since I’ve written about the next version of BlogEngine.NET that we have been working on for the past three months. It is not because the development has slowed down, but because we have worked very hard on all the new features. Some of them are listed in the roadmap and some are not, so I thought I’d give a brief overview on some of the stuff we are working on.

Database factory

Even though XML is preferred by the masses as data storage, there’s still some who thinks it’s less than optimal for their needs. When SQL Server support was added we made a lot of people happy. However, we have had a lot of requests for a MySQL provider and even a few for PostgreSQL and Oracle. Instead of writing providers for each of these databases, we decided to write a single provider called DatabaseProvider which will work on any T-SQL compliant database. That means out-of-the-box support for SQL Server, MySQL, Oracle, Access etc.

Widgets

Since the extension model was introduced in version 1.2, it has been really popular. The widget model expands the same kind of extensibility introduced by the extensions and elevates it to a whole new level. Widgets can be created easily by even the newbie ASP.NET developer and is very easy to apply to your own blog. Each widget can then be dragged and dropped in a Widget zone like the one on the right side panel on this blog.

Each widget can be edited directly from the widget itself in a Lightbox kind of fashion and BlogEngine.NET handles how settings are saved and retrieved automatically. Check out this video I made displaying the early prototype. It has become much more powerful and easy to write since and I plan to start testing it on this blog in a week’s time or so.

Author profiles

We are implementing a profile provider to handle profile information for each registered author. Now any author can edit her own profile including name, photo and about me text. BlogEngine.NET will then generate a profile page for each author. A widget displaying the authors with their pictures and links to their profile page will also be part of the default installation.

Because authors now have a profile image, we can then use it to support Pavatars and use the picture in the comments as well. The profile image can be a Gravatar, an uploaded image or a URL to any picture on the web.

Semantic web improvements

The current version already contains a lot of microformats out-of-the-box such as XFN, rel-tags, XOXO, xFolk, VoteLinks, rel-home, rel-directory, rel-directory and rel-bookmark.

This is pretty good and definitely better than most other blog platforms, but we can do even more. Since the next version will have author profile pages we can now add other elements like hCard, FOAF, OWL and a personal APML file. SIOC will also be supported.

If the timeframe permits it, the search page will let you type in the URL to an APML file and you’ll get a list of posts and pages that matches your interests from that APML file. All of this will probably make BlogEngine.NET the most semantic web supporting blog platform.

New admin navigation

The admin menu is very static today and it’s difficult to control the permissions to individual admin pages, since you have to edit multiple XML files. Also, each added page adds a new horizontal tab and we’re almost running out of space.

The new admin menu addresses these issues and makes it really easy for people to add custom pages. Each admin page must inherit from a special base page that forces you to give each page a display name. If you have written a photo gallery that needs one or more admin pages, you will be able to do that by dumping a folder with the admin pages needed into the /admin/pages folder. The menu will then, by using reflection, create the menu items automatically. The default.aspx will be the main menu item and all other .aspx pages will be sub menu items.

To handle the security on build-in and custom admin pages, administrators will have the ability to easily define which roles can access the different admin pages.

New page structure

Pages have been part of BlogEngine.NET since the first release almost a year ago. Then came the ability to build a page hierarchy and with a sitemap provider you could build a dropdown menu on your theme. You can even mark a page as being the homepage instead of the blog chronology.

Still, a lot of users have requested an easier and more powerful way of organizing and presenting the pages in a menu structure. To do that, a special admin page will be added that let’s you create a menu structure based on your own pages and pages like the build in contact, archive and blog pages. We haven’t specified this yet, but my guess is that it will be some sort of tree view where you can drag and drop the different pages around to build the hierarchy.

Community website

A lot of people have written extensions and designed new themes and with the new widget feature we expect a lot of exciting widgets being written as well. Today, we don’t really have a place to share all these creations, but that will change with the introduction of the community website.

It will allow developers and designers to upload themes, extensions and widgets for anyone to download. The community site isn’t part of the next version of BlogEngine.NET but it will be released around the same time. In time the community site will be the hub for all BlogEngine.NET resources like community written blog posts, custom add-ons and downloads.

Other improvements

  • Slugs on pages and categories
  • Subcategories
  • Better live comment preview
  • Tag selector when creating and editing posts
  • Role manager admin page
  • SSL support for Windows Live Writer and the MetaWeblog API
  • New settings mechanism for extensions, widgets and theme settings
  • OpenID delegate support (and if time permits, login support as well)
  • Better comment spam protection
  • More admin settings
  • Many new system events for extensions to act upon

As you can tell, the listed features are not small ones and that is why this release has taken a longer time to develop then the previous ones. This is by far the biggest release in BlogEngine.NET history and illustrates the ambitions we have with the project.

There is no release date yet, since we still have a long way to be feature complete, but my guess is that it will be in the end of May.

* Only $4.95/month ASP.NET & Windows 2008 + IIS 7 Hosting! FREE SQL Included

Tags: , , , ,

BlogEngine

Comments

3/28/2008 6:21:37 AM #

trackback

Trackback from DotNetKicks.com

New features in the next BlogEngine.NET

DotNetKicks.com |

3/28/2008 7:49:36 AM #

Amr

This is a very rich set of features can't wait the release.... Keep it going.

Amr Egypt |

3/28/2008 8:29:50 AM #

Josh Stodola

I must say this. But allow me to apologize in advance for the profanity.

YOU GUYS ARE FUCKING AWESOME

Josh Stodola United States |

3/28/2008 8:40:05 AM #

Juan

Cool... I'll be eagerly waiting the release =)

Juan Argentina |

3/28/2008 8:44:57 AM #

PWills

Great stuff. Quick question on "Community Website":
How will the community website interact with CodePlex? I definitely want to write a few widgets, and I was planning on creating CodePlex projects for them. Will the community website host source code?

PWills United States |

3/28/2008 2:16:14 PM #

Mads Kristensen

@PWills,
The community site and CodePlex will have no interaction, but it will be posible to link to external resources instead of uploading them to the community site.

Mads Kristensen Denmark |

3/28/2008 2:22:59 PM #

Mads Kristensen

@Josh,

No apology needed. It's difficult to make any point at all without the use of it Smile

Mads Kristensen Denmark |

3/28/2008 4:00:04 PM #

Jakob Andersen

Sounds cool Mads, one question though: Why "invent" your own DatabaseProvider when the open source community has plenty of tool and libraries to offer in this area?

Jakob Andersen Denmark |

3/28/2008 4:17:16 PM #

John Breslin (SIOC dude)

Great news guys - thanks from the SIOC project!

John Breslin (SIOC dude) Ireland |

3/28/2008 6:58:43 PM #

Nebbercracker

Mads, this is excellent news; I feel like I can't keep up.  Thanks for all of the hard work.

Nebbercracker United States |

3/28/2008 7:38:30 PM #

Will

What's a slug?

(did you know Gravatar recently ditched png's for jpegs to better support IE6?  Is that retarded or what???)

Will United States |

3/28/2008 8:33:36 PM #

pingback

Pingback from alvinashcraft.com

Dew Drop - March 28, 2008 | Alvin Ashcraft's Morning Dew

alvinashcraft.com |

3/28/2008 8:47:51 PM #

Scott

Awesome job guys, I will continue to pump out extensions as they come to my mind.  I wouldn't mind building small extensions for the masses.  Just shoot me an email it you want it worked on. heh.

Scott United States |

3/28/2008 9:25:42 PM #

Chris Pietschmann

Don't get me wrong; BlogEngine is awesome! I use it to host my own blog.

I'm starting to think that BlogEngine is starting to grow bigger than the initial "simple and light weight" goal of the project. I wonder if it would almost be better to build it extremely more extensible via plugins, and then just allow users to install only the features they want to have using these plugins. This way your installation of BlogEngine would remain the most "simple and light weight" as possible.

Just a thought. Keep up the great work everyone!

Chris Pietschmann United States |

3/28/2008 10:48:55 PM #

Mads Kristensen

@Chris,

With the new widget framework we are removing code out of the core and that makes the project smaller and more focused. The goal of this is to end up having just a core and then let people add modules on top of that. That's why the extensions, widgets and new admin structure is being worked on. I understand and share your concern, but trust that BlogEngine.NET will always be a simple and lightweight system.

Mads Kristensen Denmark |

3/29/2008 2:54:52 AM #

Grant Palin

I've not used the software before, but have read good things about.  Must download it and give it a try!

I am interested in reading about how you handled the database factory work, as I have been working on a similar concept in an project of my own.

Grant Palin Canada |

3/29/2008 4:35:26 AM #

Davide Espertini

VERY VERY VERY GOOD & COOL WORK!!!

Davide Espertini Italy |

3/29/2008 7:46:48 AM #

Miron

Keep up the good work Mads,
The code of BlogEngine rocks !
However, I share my concern with Chris Pietschmann. I start thinking too that BlogEngine will loose his
identity as "simple and light weight" that make it different from all other Blogs engine and will be just
another blog engine.
The more features it have, it nicer, but make it more complex to understand and more "heavyweight".
The same as Chris: "Just a thought. Keep up the great work everyone!"

Miron Israel |

3/29/2008 1:33:03 PM #

megaupload links

BlogEngine.NET  is very good, and have a lot of features, too bad i have soo many problems whith windows hosting
but all the blog whith BlogEngine.NET rocks, keep up the good work

megaupload links United States |

3/30/2008 9:58:51 AM #

Sukesh Ashok Kumar

Mads,
I've been waiting for comments on pages for long time now. I hope it's coming in the next release. Like I mentioned on codeplex discussion, it would be better if commenting system is designed so that it's pluggable to post/page/gallery etc...

Sukesh Ashok Kumar India |

4/1/2008 12:53:22 AM #

DevTopics

It would be terrific if you could include support for shared hosting plans using Medium Trust,
as found in the ModPack:

http://www.codeplex.com/modpack

I wouldn't be able to run BlogEngine.NET without it!

DevTopics United States |

4/1/2008 4:43:07 AM #

Mads Kristensen

@Sukesh,
I'm not sure we have time for page comments, but we might be able to fit it in.

@DevTopics,
Don't worry. It'll run perfectly under shared hosting environments

Mads Kristensen Denmark |

4/1/2008 8:42:25 PM #

Dejan

After reading this article justanothersoftwareengineer.blogspot.com/.../how-to-share-knowledge-amongst.html I really wish that the "Email to Post" feature will be implemented sooner

Dejan Macedonia (FYROM) |

4/2/2008 2:08:09 PM #

Scott

I would love for you guys to consider using SharpForge (http://en.wikipedia.org/wiki/SharpForge) as your project hosting environment for managing all of the projects around BlogEngine.NET.

Scott Australia |

4/7/2008 1:41:47 PM #

Craig Bailey

Fantastic news - looking forward to it.

Craig Bailey Australia |

4/18/2008 7:38:23 PM #

Janko

Great, I will surely upgrade to 1.4 version.

Janko Serbia |

5/5/2008 5:29:15 AM #

trackback

Trackback from ModPack for BlogEngine.NET

New Service Release: Grasp 1.3.0 SR1 Now

ModPack for BlogEngine.NET |

5/7/2008 5:39:39 PM #

Martin Stjernegaard

Hey Mads

First of all thanx to you and all the other developers who have made this awesome blog available to the rest of us... Hopefully I will someday have the skills to contribute as well.

Do you have an eta on the new release? I am desperately missing the profilepages for the authors.

Thanx a bunch.

Martin

Martin Stjernegaard Denmark |

5/30/2008 8:13:53 PM #

Ebum

great,looking forward to the new features of administration,is it release in few days this weekend?

Ebum People's Republic of China |

6/14/2008 1:48:29 PM #

Janko

Mads, what's the status of version 1.4? I am really looking forward to it!

Janko Serbia |

6/19/2008 8:11:07 AM #

AL

Hi!  Been using BE for a couple months now and am very happy with it...wondering if there's been any update on the release schedule?  The new features sound great, and I can't wait to see them in action!

Thanks for the great work you do!

AL United States |

Comments are closed

About the slave

Mads Kristensen Mads Kristensen
Web developer at ZYB and founder of BlogEngine.NET. More...

LinkedIn ZYB Facebook Last.fm Twitter View Mads Kristensen's profile on Technorati

The Lounge

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2008