Portals

During the work for NutriCon company I had the opportunity to contribute to the portal Ciazowy.pl (Pregnancy Portal), dedicated to designed for people awaiting a child, pregnant women and parents of small children.

Ciazowy.pl - main page

Project was delayed about 2 years in 2008 from beginning of the work. The goal of the Pregnancy Portal was to build portal from scratch to both content-related and technological.

After many months of hard work, we managed to come out on Mother's Day in 2009. The project took about one and half of year for many reasons, especially because of the small development effort devoted to work on the portal.

One of the most innovative parts of the site was to create a calculator of eye color. It was necessary to program the genetic model of eye color and breeding the genes describing that model. This made possible to determine the eye color of the child under the eye colors of parents and grandparents.

Ciazowy.pl - calculator of child's eye color

My tasks included:

  • design and implement administration panel,
  • gathering the requirements,
  • co-creation of graphic design - such as a frames known from the magazines,
  • create a genetic model for the calculator of child's eye color,
  • implementing news section,
  • developing guidelines for "my babies" section,
  • optimizing website for SEO,
  • work on optimizing site's load time,
  • Support the project from a technical side,
  • subversion repository management,
  • managing a team of programmers.

Ciazowy.pl - sample article

Used technologies:

Below I would like to provide some information about control panel, which I am the author.

Screenshot of the Ciazowy.pl's CMS - articles list
Screenshot of the Ciazowy.pl's CMS - articles list

Portal's backend was made - as previously mentioned in ExtJS technology. Entire list of classes in JavaScript had been created, expanding ExtJS widgets with new functionalities. I also implemented version control system very simple to use, which allowed possibility to work on a single article many times, keeping the history of changes.

Screenshot of the Ciazowy.pl's CMS - versions list of the article
Screenshot of the Ciazowy.pl's CMS - versions list of the article

In portal projects content is a key, and in this case the content are the articles. They have many parameters, e.g. title, lead, photo, tags, author, connection to related articles, category and other. All changes in article are accessible for the user at any time - who and when modified the article and when it was published.

Editor can create multi-page article if he or she need that. And because article is made of small paragraphs - it is possible to move them among pages - next or previous one. This allows to keep pages fit and friendly to the reader.

Screenshot of the Ciazowy.pl's CMS - article settings
Screenshot of the Ciazowy.pl's CMS - article settings

As mentioned before - every article is created from the list of paragraphs. Each of them can have additional settings. For example frames with the main sentence of the text.

Screenshot of the Ciazowy.pl's CMS - list of the article's paragraphs
Screenshot of the Ciazowy.pl's CMS - list of the article's paragraphs

Editor can also check how the article will be looking in portal. This is very easy and can make work with articles faster and simplier.

Screenshot of the Ciazowy.pl's CMS - article preview
Screenshot of the Ciazowy.pl's CMS - article preview

Administration panel uses Ajax technology. Communication (data exchange) between web browser and server is possible through a specially designed XML document. It should also be noted that when editing the article only changes in the text are sent to server, not the entire article - as it usually happens.

There is more than 30 classes of ExtJS, written in JavaScript. Because of that there had been created special tool, which makes them minified (compressed) in single JavaScript file. This tool is written in Bash.
"JavaScript compression" was assured with yuicompressor program. Currently, there is available a tool made by the developers from Sencha company, available at http://www.sencha.com/products/jsbuilder.