Nejnovější články z této kategorie

Servis

Jan Král - Projekty (12:00 | 5.5.)  Jagg.cz  linkuj.cz

Ella project (část 1)

Ella je nový content management system, který vzniká ve společnosti NetCentrum. Je to nástroj určený vývojářům web aplikací, který by měl velmi usnadnit tvorbu stránek založených na publikování obsahu. Záměrně uvádím "obsah" a nikoliv články či text - Ella není systém, který je zaměřen (nedejbože omezen) na práci s textem, místo toho přistupuje ke všem objektům stejně a nijak tak vývojáře nesvazuje. Je založen na python frameworku Django a je k dispozici jako open source pod BSD licencí.

Mezi hlavní rysy elly patří:

  • škálovatelnost - zvládá vysoké zátěže (miliony návštěv denně)
  • rozšiřitelnost - standardní django aplikace, snadná spolupráce s aplikacemi třetích stran

Hlavní funkce pak obsahují:

  • Subsystém pro publikaci obsahu v kategoriích včetně možnosti umístit jeden kus obsahu na více webech, prioritami řízeného řazení a tvorby elegantních URL
  • sada nástrojů na embedování objektů - ať už jeden do druhého (vložit foto do ankety, to vložit do článku a ten zobrazit v galerii) či přímo do šablon (umožňuje nám zobrazit libovolný obsah na stránce kategorie bez nutnosti znát typ obsahu)
  • cache framework umožňující cachování jednotlivých objektů, jejich reprezentace a kusů výstupu s možností automatické invalidace při změně objektu včetně podpory závislostí
  • aplikace pro články, ankety, galerie, testy a soutěže a další

Volba djanga jako platformy dává přístup k široké škále kvalitních znovupoužitelných aplikací a nástrojů, které jsou již k dispozici jako open source.

Pro koho je ella určená?

Ella je vhodný nástroj pro tvorbu jakéhokoliv webu, který se musí potýkat s obsahem. Věci, které Ella neumí lze doplnit ve formě standardní django aplikace. I webům, jejichž primární úkol není správa a publikování obsahu, může Ella pomoct svou sadou nástrojů - jedná se v podstatě o kolekci django aplikací, které kromě jiného obstarávají například komentáře, hodnocení objektů, cachování a další. Vše je možné navázat na libovolný django model a spolu s aplikacemi, které jsou k dispozici přímo v djangu (hlavně autentifikace, sessions a automatické admin rozhraní) jsou schopny obsloužit většinu rutinních funkcí, které by měla každá správná web aplikace obsahovat.

Pokud chceme Ellu jen nasadit a provozovat, je nutná rudimentární znalost django a samozřejmě HTML (Ella používá šablonovací jazyk z djanga). Až teprve pokud budeme chtít přidávat funkcionalitu či customizovat již existující aplikace, musíme se uchýlit k pythonu jako takovému. Proces instalace a tvorba konkrétního webu bude popsaná v dalších dílech seriálu.

Status report

Ella je v současné době již nasazena v ostrém provozu na serveru Žena.cz a přidružených webech. Zatím není plně odladěn a nasazen systém pro invalidaci cache, což nedovoluje nasadit cache v masivnějším měřitku, i tak je ale systém schopný pokrýt rostoucí návštěvnost tohoto serveru. Zároveň s pracemi na zdokonalování Elly jako takové, se snažíme připravit stránku pro případné zájemce o stažení a provoz Elly. Zatím fungují pouze provizorní stránky ellaproject.cz a diskuzní skupina ella-project@googlegroups.com.

V rámci nových "featur" na elle se můžete těšit na podporu videa, jako dalšího druhu obsahu, diskuzní fóra a základní podporu uživatelských profilů.

Diskuze