Tworzenie frontendu
Tworzenie frontend dla aplikacji webowych opartych o autorski system CMS. Frontend tworzony na podstawie layoutu przygotowanego w HTML, CSS, JavaScript. Język szablonów to Twig, który jest domyślnym dla frameworku Symfony.
Rodzaje aplikacji webowych, dla jakich tworzyłem frontend:
- strona typu landing page
- strona firmowa
- wielojęzyczna strona firmowa
- sklep internetowy
- strona z ogłoszeniami
- strona typu portal internetowy
- multisite; tworzenie i publikowanie treści wielu stron www z jednego panelu administracyjnego
Typowe elementy na aplikacji webowej (stronie internetowej):
- strony:
- strony statyczne, indeks stron statycznych
- strona główna, o nas, kontakt, regulamin, polityka prywatności, rodo itp.
- strona artykułu, indeks artykułów
- galeria, indeks galerii
- aktualność, indeks aktualności
- ogłoszenie, indeks ogłoszeń, wyszukiwanie i filtrowanie ogłoszeń
- portfolio, lista projektów w portfolio
- wydarzenia, kalendarz wydarzeń, rejestracja lub zakup biletu na wydarzenie
- przepisy kulinarne, indeks przepisów, wyszukiwanie i filtrowanie przepisów
- strony statyczne, indeks stron statycznych
- sekcje: nagłówek, menu (główne, w stopce), stopka, bloki, media
- formularz kontaktowy
- popup: z regulaminem, ze zgodą na cookies, treścią marketingową
- obsługa mapy Google
- elementy dla Search Engine Optimization (SEO); meta tytuł, meta opis, meta znaczniki
- generowanie sitemap.xml
- wyszukiwanie treści na stronie
- stronicowanie treści na stronie
- zmiana rozmiaru tekstu
- jasny, ciemny motyw lub wysoki kontrast
- radio internetowe na stronie
- frontend dla zalogowanego użytkownika:
- edycja profilu użytkownika
- zmiana hasła
- zarządzanie elementami ulubionymi
- dodawanie treści
- kasowanie profilu
Wdrożenie sklepu internetowego opartego o system eCommerce Sylius:
- instalacja i konfiguracja
- stworzenie szablonu dla frontend na podstawie theme dla bootstrap: SyliusShopBundle
- frontend tworzony na podstawie layout'u przygotowanego w HTML, CSS, JavaScript
- język szablonów to Twig, który jest domyślny dla framework'u Symfony
- dostosowanie panelu administracyjnego
- stworzenie szablonów dla e-maili
- dodanie i konfiguracja wtyczek: BitBagSyliusCmsPlugin, OdiseoSyliusBlogPlugin
Tworzenie backendu
Tworzenie paneli administracyjnych dla aplikacji webowych opartych o autorski system CMS. W zależności od uprawnień użytkownik ma dostęp do innych paneli.
Rodzaje paneli administracyjnych (CRUD), jakie tworzyłem:
- zarządzanie kontaktami pozyskanymi z formularza kontaktowego
- CRM dla zarządzania klientami (np. notatki o kliencie, faktury, płatności, załączniki)
- zarządzanie treściami: strony statyczne, artykuły, blog, ogłoszenia, galeria, portfolio, kupony promocyjne
- zarządzanie treściami w różnych językach (tłumaczenia)
- zarządzanie mediami i dokumentami
- zarządzanie wydarzeniami (np. rezerwacje i rejestracje na wydarzenie)
- zarządzanie przepisami kulinarnymi, kolekcją książek
- zarządzanie powiadomieniami na urządzenia mobilne (Android, iOS)
- zarządzanie reklamami wyświetlanymi w aplikacji mobilnej
- zarządzanie płatnościami
- obliczanie i pokazywanie statystyk
- i wiele innych
Tworzenie komend dla CLI (command line), które realizują zadania uruchamianie w tle zgodnie z harmonogramem (patrz. cron).
- wysyłka e-maili
- wysyłka powiadomień push
- różne obliczenia: np. rozliczanie reklam, statystyki
- sprzątanie w bazie danych: np. usuwanie nieaktywnych użytkowników
Komunikacja z użytkownikami:
- tworzenie szablonów e-maili
- rejestracja użytkownika
- weryfikacja e-maila
- resetowanie hasła
- potwierdzenie zamówienia
- potwierdzenie rejestracji na wydarzenie
- wysyłka e-maili
- gdy formularz kontaktowy został poprawnie wypełniony
- podczas rezerwacji, rejestracji na wydarzenie itp.
- wysyłanie powiadomień
Generatory kodu z wykorzystaniem komponentu Symfony Maker, usprawniające i przyśpieszające pracę z powtarzalnymi zadaniami.
Rodzaje generatorów kodu oraz typ generowanego pliku:
- szablon dla kontrolera (php)
- szablon dla encji (php)
- szablon dla repozytorium (php)
- szablon dla tras (yaml)
- szablon dla paneli CRUD (html.twig)
Eksportery plików czyli generowanie plików do formatów: xml, pdf, cvs, xls.
API dla aplikacji mobilnych
Tworzenie API dla aplikacji mobilnych opartych o autorski system CMS
Rodzaje aplikacji mobilnych:
- aplikacja z aktualnościami oraz wydarzeniami
- aplikacja z przepisami kulinarnymi
- aplikacja jako mobilna wersja aplikacji webowej (strony internetowej)
- zarządzanie kolekcją książek
- aplikacja do umawiania się na spotkania offline
- aplikacja lojalnościowa dla sieci lodziarni
Typowe API dla aplikacji mobilnych:
- uwierzytelnianie, autoryzacja
- zarządzanie użytkownikiem
- logowanie, rejestracja
- odświeżenie tokenów użytkownika (access, refresh)
- zmiana i resetowanie hasła
- potwierdzenie e-maila użytkownika
- usunięcie konta użytkownika
- edycja profilu użytkownika
- zarządzanie treściami (np. strony statyczne, aktualności, galerie zdjęć, wydarzenia, kupony promocyjne, przepisy kulinarne, pozycje w menu)
- dostęp do kolekcji zasobów
- zarządzanie pojedynczym zasobem (CRUD)
- wyszukiwanie, filtrowanie, stronicowanie
- wersjonowanie zmian, cache (pamięć podręczna)
- zarządzanie ulubionymi treściami
- dodawanie lub usuwanie itp.
- robienie rezerwacji, rejestracji np. na wydarzenie
- walidacja danych (np. z formularza) przesłanych przez użytkownika
Intergracje z zewnętrznymi serwisami
- Płatności internetowe:
- PayPal
- Przelewy24
- PayU
- Import XML; import i synchronizacja bazy produktów dla sklepu internetowego Sylius. Baza produktów pochodzi z zewnętrznego źródła w formacie XML
- Rejestracja i logowanie użytkownika przy pomocy zewnętrznych usług; Google, Facebook, Apple
- Wysyłanie powiadomień na urządzenia mobilne (Android, iOS) przy pomocy Google Firebase Cloud Messaging
- System Hosted SMS (w skrócie HSMS); masowa wysyłka wiadomości SMS