Developers Club geek daily blog

1 year, 6 months ago
Pagekit: обзор модульной CMS на базе Symfony

Get acquainted: Pagekit is the new modular CMS from the German studio vendor of the YOOtheme templates based on Symfony components, and also Vue.js, Webpack, Doctrine and other modern technologies. Pagekit reflected as a simplicity combination in management to flexible opportunities for development — what is not enough for the known CMS based on PHP and having a set of anachronisms.

Pagekit is initially positioned as a platform in which modern technicians a programming web and therefore having a high threshold of entry that can be noted as undoubted benefit as it will filter the developers with insufficient qualification producing products of doubtful quality that is observed on systems with a low threshold of entry found application. It means that the people having a certain notion of culture of a code and familiar with modern technologies, or possessing sufficient preparation that to study them in the course of acquaintance to Pagekit will be engaged in writing of expansions.

Official site of Pagekit.
The project on Github.

This overview was prepared for the purpose of basic acquaintance of audience with new CMS, its opportunities and perspectives.

New technologies — new opportunities


More than a year ago the alpha 0.8 was provided to public. During this time developers carried out refactoring, to enter a large number of improvements, changed API and considerably remade a platform. To an output of version 0.10 there were following changes:

  • The set of technologies based on which Pagekit is constructed changed;
  • Cardinal changes in API;
  • New installer;
  • Rebranding of the website pagekit.com;
  • Documentation is rewritten.

Besides, it should be noted lack of compatibility between an alpha and betas, it is equal as a migrator therefore if you created the test website, then it is necessary to bring together him again and to transfer content manually. What, in other, and is logical: it was the alpha which does not suit for use on production the websites.

Architecture

The expanded architecture of Pagekit is based based on popular Symfony of the components which became the standard de facto in modern PHP applications. Control of dependences is exercised by means of Composer, to the used libraries allowing to declare dependences and to simplify writing of a code. From a box Doctrine — the mechanism of object and relational display (ORM) for PHP version 5.3 is implemented and is more senior, allowing to work with the database is most transparent.

As the collector of projects Webpack, according to experts, being a breath of fresh air after Grunt is used now. Benefit of the multistream collector of Webpack — its incredibly fast performance that will be appreciated by developers.

The user interface is based on Vue.js — easy and flexible a frontend a framework, MVVM of data providing communication through API and exceeding better known analogs on simplicity and performance. If you are familiar with Angular, then for certain fall in love with Vue.js. Besides, Jquery is by default connected.

And, at last, in quality the frontend of a framework is used by UIkit — the lightweight framework from the same studio which is alternative of Bootstrap first of all thanks to the small size at which is not conceding by the opportunities, functionality.

Installation

The installer pleases with pleasant and intuitively clear interface where everything is simple and clear. At first the system suggests to select installation language. The following step — connection of the database with a standard set of fields for input. It is necessary to bring the user further — the site administrator. The completing step — input of the name of the website and its description. Generally, anything difficult.

It is possible to study system requirements of Pagekit here.

Pagekit: the overview of modular CMS based on Symfony

User interface

After authorization in the administrator's panel the interface will be available to you to management of the website. Developers went on the way of simplification, however peremudrit and made hierarchy confused. As a rule, the logical chain has to be intuitively clear proceeding from names: general settings, widgets or section of installation. In the list of expansions it would be advisable to display type (a plug-in, a widget, etc.).

Pagekit: the overview of modular CMS based on Symfony

Pagekit: the overview of modular CMS based on Symfony

— it is more logical to Update to transfer to Settings as relating part to a kernel of system. In other, it is particulars. A global problem — the name of menu items of a panel of administration (for example, Settings is better to call Global settings) and implicit hierarchy. At my subjective view, the adminka interface — the weakest link of system. During operating time with Pagekit I did not get used to the interface, doing excess cliques in search of the necessary section (for example, it is necessary to install a plug-in is Site or System? Actually the last, but the confusion arises a constant because of implicit names of sections)

Editor

Pleasant and convenient markdown editor (hi to bloggers). markdown can turn off the mode and to work with HTML tags and, of course, there is preview mode. The insert of images in the editor will not make difficulties, in the mode of loading of the image it is enough to drag a mouse the image from a desktop and it will be filled instantly in. Conveniently.

From shortcomings during the work with content I will note lack of the Meta-description meta-keywords and title parameters which the user could manage that is important for website promotion. Besides, so far there is no taxonomy as part of the application in general. Materials are published in the section the blog without a possibility of the choice of category.

Pagekit: the overview of modular CMS based on Symfony

Built-in market

The directory of expansions for Pagekit is interestingly implemented. You will not find on the website CMS the section with the list of all existing expansions. They are available only through the market which is built in Pagekit. For a start it is quite good, but what will be when the number of expansions passes for one hundred? It is more convenient to find quietly the necessary addition on the official site, to study its description, and during the work with the website to set it already at once.

In the current implementation of a market there is not enough separation of expansions into categories. It would be convenient for navigation. Now all additions are displayed by one list. Besides, does not prevent to output the link to a demo and to the page of a product in a market.
Installation of expansions happens in several ways: the setup package is downloaded from a repository then there is its unpacking and installation. It is also possible to set a setup package by a classical method (if there is an archive).

Pagekit: the overview of modular CMS based on Symfony

Localization and documentation

At the moment more than 20 localizations are ready for different languages and some more localizations are in translation process (the project on Transifex). Documentation, including video lessons is available to developers. If you decided to write own expansion for Pagekit, all basic information is available. Besides, it is possible to find transfer of documentation into Russian in a network.

Development and perspectives


Web technologies develop rough rates and their correct application — a key to success. However time works often against developers as any delay means recession of interest from interested persons. And it is important to seize the moment, being on a wave of interest and to utilize credibility.

Technologies without marketing are doomed
History is complete examples of unique technology solutions which could take the worthy place in the market, however in view of failure marketing strategy worthy developments were unnoticed according to Prost and lost relevance.
At the same time initially technology weak product at due marketing and the correct positioning takes strong positions and a niche, having forced out competitors as gives to users what they expect. In this case the product can technology develop slow rates, but win due to dynamics of community. It is possible to call developers of such system saddled a wave.

Now we will return to Pagekit. Apparently from this overview, the design team is full of enthusiasm and works on technology development of CMS. It is really interesting and promising project. However for success insufficiently exclusively technologies. Pagekit needs powerful infrastructure and forming of powerful community that will make a platform attractive both for third-party developers, and for the ultimate user. Certainly, now the platform only forms, and still ahead, but for achievement of success it is necessary to solve the following problems:

Positioning. It is known that for a solution of each task it is better to use the CMS. For the blog Wordpress, is convenient for Internet commerce specialized solutions, the whole galaxy of CMS will be suitable for the corporate website, and for a portal Drupal, etc. on the example of Ghost is good we saw how new CMS can press a little Wordpress titanium. In the long term it is necessary to answer a question: what purposes and problems are solved by Pagekit? If the platform is guided by the ultimate user, then it is necessary to give him ready solutions, examples and documentation. If the platform is oriented more to developers, it is necessary to build the corresponding ideology. I will suggest that Pagekit nevertheless will be guided more by developers as this audience is closer, it is more interesting to interact with it and, besides, the high threshold of entry in the used technologies will allow to protect Pagekit from widgets of doubtful quality.

Infrastructure. Building of the infrastructure covering the different directions from documentation to the directory of expansions and involvement of enthusiasts in development of a platform. Work, in other, in this direction moves in process of design team opportunities, and at the moment they actively study the section of documentation with video examples.

Community. Life of any CMS is its users. What more users will be keen on Pagekit, the result will be that the best. For this purpose it is necessary to prepare the friendly environment to which there was a wish to return again and again. In fact, that is necessary for users? To receive a solution. And to developers — that their contribution did not remain unnoticed. Github too highly specialized service will also not bring moral satisfaction to third-party kontribyyutor which contribution will remain unnoticed. Gitter a chat and Twitter are not suitable for serious discussion — it is good for a solution of short-term questions, however it does not suit for discussion of serious subjects. The forum where the discussed questions will is necessary are separated on subjects, besides, each of participants will be able to acquire a certain reputation.

Roadmap. Approximate terms of release and implementation plans of functionality — what more interests the users of system who are already working with a product. At what, it would be more convenient to browse chronology from the beginning till a present situation on the separate page.

Promoting. Perhaps, the key moment for any product that requires permanent attention and resources. In this YOOtheme direction carry out a certain work: the name Pagekit sounds on some Symfony conferences in Europe: or CMS is presented in the stand form, or Pagekit sponsors.

Why it is worth being fond Pagekit?


At the time of writing of this overview version 0.10.1 is actual (close to stable) and it is not recommended for use on the working websites. However developers should pay attention to Pagekit and to study possibilities of this platform as the flexible architecture and use of advanced technologies give the powerful tool for development based on Symfony of a framework and its elements. The available environment for development quite is suitable for writing of narrowly targeted solutions which, in the long term, can pour out in full-fledged third-party products for this CMS.

This article is a translation of the original post at habrahabr.ru/post/274631/
If you have any questions regarding the material covered in the article above, please, contact the original author of the post.
If you have any complaints about this article or you want this article to be deleted, please, drop an email here: sysmagazine.com@gmail.com.

We believe that the knowledge, which is available at the most popular Russian IT blog habrahabr.ru, should be accessed by everyone, even though it is poorly translated.
Shared knowledge makes the world better.
Best wishes.

comments powered by Disqus