My portal is almost done!

By Mohammad Mahdi Ramezanpour at February 24, 2010 12:21
Filed Under: System.Web.Portal

A year ago, I posted about a portal that I was going to develop and its name was System.Web.Portal. In that post I said the portal is based on ASP.NET Web Forms, LINQ (especially LINQ to SQL) and some other technologies. Unfortunately, because of the situation I had, I couldn’t continue the project’s development until November 2009.

Since that time, I started to develop this application and realized that some features that I was planned to implement is not popular these days and if I develop in that way, the portal won’t have any differences with other portals in the market; so I decided to develop this application in another way. In this post I want to describe the new System.Web.Portal.

When I started to develop this portal, I checked lots of portals out and found out the following:

  • Nearly all portals are based on databases such as SQL Server, SQLite, VistaDB and so on.
  • Most of portals’ designs are old and they aren’t using new designing technologies yet (In a sentence, they’re not Web 2.0 yet)
  • When you look at the source code of those portals, you can’t understand because the code is NOT clean.
  • Module creation on those portals is like pain in the neck and it’s not so easy.
  • And a lot more leakages…

I decided to cover all of leakages above and something which is interesting so here’s my main goal on developing System.Web.Portal:

  • System.Web.Portal (SWP) has written based on .NET Framework 3.5 or above. Also, it’s working fine on Mono 2.6.1 or above. This feature enables you to install this portal on almost any server including Windows, LINUX or ever MAC OS servers.
  • SWP is completely based on standard XML and there’s no database at all! So the user can install it on every server that supports .NET Framework 3.5 or Mono 2.6.1 or above without any database need. By the way, I’m going to release providers for SQL Server too. So if you want to have SQL Server backend, you can download this patch and install it on your own application.
  • One of the technologies that I really like is Web 2.0. It’ll improve website’s performance because it uses less HTML elements and there’s no “Table”, “Tr” and “Td” tags which I hate. SWP is completely based on Web 2.0 technology and I think it’s one of the advantages of this product. Here’s some other features of Web 2.0 represented by Andrew McAfee:

    Search
    Finding information through keyword search.

    Links
    Connects information together into a meaningful information ecosystem using the model of the Web, and provides low-barrier social tools.

    Authoring
    The ability to create and update content leads to the collaborative work of many rather than just a few web authors. In wikis, users may extend, undo and redo each other's work. In blogs, posts and the comments of individuals build up over time.

    Tags
    Categorization of content by users adding "tags" - short, usually one-word descriptions = to facilitate searching, without dependence on pre-made categories. Collections of tags created by many users within a single system may be referred to as "folksonomies" (i.e., folk taxonomies).

    Extensions
    Software that makes the Web an application platform as well as a document server.

    Signals
    The use of syndication technology such as RSS to notify users of content changes.

  • You can ever begin to figure out how easy is to create module for this portal. I really happy about it because whenever a customer needs a specific module, I can develop that module very fast and easy. I’m going to write a new post about creating module on SWP but for now I can tell you that it’s easy like a piece of cake ;-)
  • One other feature that I really like to talk about in this post is Theme creation. Creating theme in SWP is very easy! You don’t need to write any code at all. All you need to do is to go to the administration panel and create a new theme. With a little knowledge of HTML and CSS, you can create your own theme for your website (I’ll describe more at a later date).

There are more dedicated features that I really want to inform you about but I think I should explain those in series of posts.

Version:

Obviously, the first version will be beta 1 (0.1). I’ll do my best to release the first major version (1.0) in 3 months.

So, when you’re going to experience it:

I’m going to upload this project to the CodePlex as an Open-Source project in a month so you can download it for free!

Thanks for reading.

An introduction to System.Web.Portal

By Mohammad Mahdi Ramezanpour at January 22, 2009 23:01
Filed Under: System.Web.Portal

One of my resolutions that I didn’t mentioned in my previous post about “Things I’m going to do in 2009” is to upgrade my portal to ASP.NET 3.5 add some great features to it.

But as a matter of fact, it hadn’t has a name because the portal was not my main goal and I really didn’t have any plan for it till a few weeks ago. Because I’m going to release this version officially, I decided to select a name for it. I researched a lot about a good name and found lots of names! Finally and after lots of researches, I’ve selected System.Web.Portal and think it’s a good name for it.

I’ve seen lots of portals and have worked with most of them such as DotNetNuke, Rainbow, etc. and realized that these portals are only good for those who are a normal user and don’t want to develop anything under these portals. Also these portals have some kind of limitations such as the database limitations and more.

In System.Web.Portal it’ll be easy like a piece of cake to develop modules, controls, providers, etc. and I’m sure you’ll enjoy it.

In the first version of this portal witch will be available in few months, I’m going to use the following technologies:

ASP.NET 3.5 Web Forms

I’m going to use ASP.NET Web Forms in this project and as a matter of fact, I don’t want to move into ASP.NET MVC or any other alternative solutions but a developer with a knowledge of ASP.NET can develop an ASP.NET MVC version because it’ll be so easy to develop under this platform!

LINQ

I think it’s now time to leave some interesting things such as DataSet, DataTable, etc. and move to LINQ because of its ease-of-use. The first version of this portal will have two providers; a provider for Microsoft SQL Server and one for XML and I’m going to use LINQ in order to do so. Besides, the next versions will support some other database engines like Sqlite, VistaDB, FireBird SQL, Oracle and more.

Compatible With Mono

First of all, Lets see what is mono:

Mono is a software platform designed to allow developers to easily create cross platform applications. It is an open source implementation of Microsoft's .Net Framework based on the ECMA standards for C# and the Common Language Runtime. We feel that by embracing a successful, standardized software platform, we can lower the barriers to producing great applications for Linux.

More info: http://www.mono-project.com/What_is_Mono

This portal will be writing in C# 3.0 which is completely supported by Mono. It means you can also run this portal in Linux, Sun Solaris and any other platforms you want!

All you’ll need is to create a provider for your database like MySQL (that of more common in Linux) and then enjoy! You don’t want? The default XML provider is supported in all platforms; so don’t change anything if you’re not going to use any specific database.

There are some other great features in this portal that you’ll see in the first release of this project.

Currently Reading

Quote of the day

Send Persian SMS