Nivea kvartální kvízy
Soutěžní otázky z prostředí Nivea. Aplikace vložená do systému Sitecore.
Od Photoshop psd ke spuštění
- grafika nastříhána
- sass vyrobeno
- javacsripty napsány
- php 7.4 použito
- grunt se postaral o js/css kompilaci, optimalizaci
- git verzován a zdroj přenesen na produkci
- otestováno
- spuštěno
Komunikace se službou
zajímavostí aplikace je úložiště, není tvořeno klasickou databází, ale službou, registrace uživatelů, popř. jiná komunikace probíhá na základě dotazů s api, využívá se jak php curl model, tak i javascript
Animace
I když je aplikace psána v PHP, je snaha o nerušený animovaný přechod mezi stránkami, vlastní řešení s podporou ajaxu a snippetů
ThinkBIG
Projekt zaměřený pro mladé lidi od 16 do 26 let.
Mladí realizují své nápady, zlepšení svého prostředí, pomoc jiným, stavba sportoviště apod.
Každý projekt je posuzován komisí, ta projekt schválí/zamítne, po doporučení projektu komisí Nadace O2 poskytne finance, mladý tým začíná
realizovat.
Evidence předmětů, činností, přidělený Mentor, doklady, nákupy a jejich potvrzování atd. vše je třeba spravovat v administraci.
Tento projekt dnes již neběží.
Stavěno ještě na PHP 5.4
Na tomto projektu se začínalo s Nette 0.97, jak šel čas, provedl se velký upgrade na nový Nette dvojku.
Grafika dodána v psd, výsledek nastříhán
Projekt si několikrát prošel grafickou revizí.
Stránky byly nejprve statické, v době, kdy přicházela éra responsivního designu, bylo potřeba modernizovat, na tomto projektu jsem poprvé zabrouzdal do této problematiky, co to je responsivní web.
Projekt rozdělen na několik modulů
Vzhledem k rozsáhlosti, je celý projekt rozdělen na moduly. Spousta administace, generování smluv, generování exportů, vícestránková registrace uživatelů, procesy schvalování projektů, závěrečných zpráv, komunikace, evidence apod.
Úložiště poháněno Dibi
Databáze běžela na MySQL, za pomocí Dibi knihovny od Davida Grudla.
Nivea Reward E-shop
Jednoduchý E-shop Nivea, za nasbírané body během soutěží a akcí lze směnit za produkty či služby nebo slevy.
PHP 7.4 Azure - Git
Správa úložiště není realizována pomocí ftp, ale Azure službou, vše je automatizováno GITem.
Docker
Jedna ze skvělích věcí Dockeru, přenesena přesná kopie produkčního prostředí na lokální vývoj.
Grafika
Je opět nastříhána z dodaného psd a zapracována do výsledku.
Spuštěn Grunt arsenál nástrojů pro sass překlady, optimalizaci css/js, produkce...
SmartUp
Pokračování programu ThinkBIG. Realizace nápadů mladých lidí od 16 do 26 věku, pomocí Nadace O2.
Něco se zjednodušilo, odstranila se mapa projektů, něco se naopak rozšířilo, např. úrovně/levely projektů a přihlášek. Web dostal i ocenění třetí nej. web
Přechod na PHP7, Doctrine 2...
Jeden velký otazník visel hned na začátku, začít na zelené louce, nebo upgrade., rozhodnutí padlo na první volbu a tak jsem se pustil nejen do novějšího PHP, ale zejména do Doctrine 2 co se databáze týče, či PHPUnit kvůli testům, nakonec se podařilo a vyplatilo se.
Grafika se pravidelně redesignovala
Dodané psd zase narostlo, postupně se nastříhalo a zapracovalo do bootrstrap 3, zde jsem již využíval nástroje jako Grunt, s pomocí něhož byl zprovozněn browser-sync, díky tomu vývoj grafiky jemně připomínal vývoj desktop aplikace. Responsivita již samozřejmostí.
Nivea soutěže, akce, hry...
Soutěžní otázky, hádanky, zajímavosti ze světa Nivea, získávání bodů a odměn.
PHP na Dockeru
Různá vývojová prostředí, přizpůsobena produkci od PHP7.0 až 8.0
Grafika
Dodávané psd nastříhány a zapracovány
Jazyky
Aplikace jsou většinou ve více jazykových mutacích
Více ukázek
- Všechny
- Pexeso
- Skořápky
- Advent
- Citáty
- Bmi
- Pohádka
Moje KPMG
Projekt slouží k ochraně osobních údajů (GDPR)
Registrace uživatelů do aplikací, odběrů novinek.
Úložiště MariaDB
Citlivá data jsou šifrována na úrovni databáze.
Přihlašování
Formulář vygenerovaný pomocí generátoru lze vložit na libovolnou stránku, uživatelské údaje a data jsou chráněna.
Routování
Jedna zajímavost na projektu je např. routování stránek pomocí kódů, jednotlivé url stránek nejsou tvořeny např. /uzivatel/registrace, ale jednorázovým unikátním kódem.