Bricksis

System do zarządzania procesami i ograniczania strat w małych i średnich firmach. Rozwijany od ok. 10 lat - od pierwszej wersji na Symfony 2.8 po obecną architekturę na PHP 8.3 i Symfony 6.4.

Co to jest Bricksis

Bricksis to aplikacja, która pomaga małym i średnim firmom uporządkować procesy i ograniczyć straty - czasowe, finansowe, organizacyjne i komunikacyjne. System odwzorowuje realne procesy pracy przez własny model domenowy: projekty, iteracje, tematy, komórki, matryce, obserwatorzy i role.

Architektura ma charakter modularnego monolitu z wyraźnym podziałem na warstwę WWW, panel administracyjny, REST API i modułowy frontend. Taki układ pozwala rozwijać system etapami bez konieczności rozbijania go na osobne aplikacje.

Projekt jest rozwijany i utrzymywany od ok. 10 lat. To działający system produkcyjny z realnym modelem domenowym, historią zmian i wyzwaniami typowymi dla długo żyjących aplikacji.

Projekt w liczbach

Bricksis to projekt z realną historią - wymaga zarówno rozwoju nowych funkcji, jak i utrzymania istniejącego systemu.

~10
lat rozwoju
3
warstwy architektoniczne (Web, Admin, API)
2.8 → 6.4
migracja frameworka Symfony
7
kluczowych pojęć w modelu domenowym

Czym zajmuję się w tym projekcie

Każdy z tych obszarów wymaga innego zestawu umiejętności - od modelowania domeny, przez architekturę i frontend, po infrastrukturę i utrzymanie.

Model domenowy i logika biznesowa

System odwzorowuje procesy organizacji przez pojęcia takie jak projekty, iteracje, tematy, komórki, obserwatorzy i role. Logika biznesowa jest wydzielona do serwisów domenowych, nie do kontrolerów - co ułatwia rozwój i testowalność.

Architektura modularnego monolitu

Wyraźny podział na warstwę WWW, panel administracyjny i REST API. Taki układ pozwala rozwijać poszczególne części systemu niezależnie, bez ryzyka że zmiana w jednym miejscu pociągnie za sobą problemy w innym.

REST API i przetwarzanie asynchroniczne

Backend udostępnia dane przez REST API, a zadania w tle obsługuje Symfony Messenger z transportem asynchronicznym i Redis. Do tego dochodzi automatyzacja wysyłki powiadomień e-mail.

Frontend modułowy i interaktywna matryca

Moduł frontendowy oparty na Vite, lit-html i modularnym JavaScripcie realizuje własne renderowanie, zarządzanie stanem, obsługę uprawnień i złożone interakcje w widoku matrycy procesowej.

Role, bezpieczeństwo i kontrola dostępu

System wykorzystuje role, konfigurację bezpieczeństwa Symfony i mechanizm Voterów do kontroli dostępu zależnej od kontekstu biznesowego i typu użytkownika.

DevOps i środowisko developerskie

Lokalne środowisko oparte o Docker Compose z MariaDB, Redis, Nginx, MailHog i Redis Insight. Komendy konsolowe Symfony automatyzują migracje danych, normalizację ról i operacje utrzymaniowe.

Jak projekt się rozwijał

10 lat rozwoju to nie tylko nowe funkcje. To migracje, refaktoryzacje, zmiany architektury i ciągłe dostosowywanie systemu do nowych wymagań.

Krok 1

Budowa modelu domenowego

Projekt wystartował od odwzorowania procesów organizacji w systemie. Powstał model z projektami, iteracjami, tematami, komórkami i rolami - dopasowany do realnych potrzeb firmy.
Krok 2

Rozbudowa funkcjonalności

System zyskał matryce, obserwatorów, powiadomienia, formularze konfiguracyjne i nowe widoki operacyjne. Każda zmiana wymagała dopasowania modelu danych i logiki biznesowej do rosnących potrzeb.
Krok 3

Migracja frameworka Symfony 2.8 → 6.4

Pełna migracja przez kolejne wersje major - z aktualizacją konfiguracji, security, ORM-a, szablonów i zależności. Wykonana bez przerwy w działaniu systemu produkcyjnego.
Krok 4

Modernizacja frontendu

Wymiana części frontendu na modułowy JavaScript z Vite i lit-html. Nowa struktura modułów, własne renderowanie widoków i uporządkowanie procesu budowania aplikacji.
Krok 5

Utrzymanie i dalszy rozwój

Bieżące prace obejmują optymalizację wydajności (virtual scrolling, WebSockety), rozbudowę API, porządkowanie dokumentacji i przygotowanie systemu na kolejne wdrożenia.

Kontekst projektu

Kilka faktów, które opisują charakter i skalę Bricksis.

~10 lat rozwoju

System działa produkcyjnie od ok. 10 lat. W tym czasie przeszedł migracje frameworka, zmiany wersji PHP, rozbudowę modelu domenowego i wielokrotne aktualizacje zależności.

Od backendu po infrastrukturę

Backend w Symfony, frontend w Vite i lit-html, REST API, środowisko Docker, migracje bazy danych i automatyzacja - projekt obejmuje cały stos technologiczny.

Model domenowy oparty na procesach

Projekty, iteracje, tematy, komórki, matryce, obserwatorzy i role - struktura systemu odwzorowuje procesy pracy organizacji i zmienia się razem z nimi.

Migracje na działającym systemie

Przejście z Symfony 2.8 na 6.4, aktualizacja do PHP 8.3 i wymiana części frontendu na Vite - przeprowadzone na działającym systemie produkcyjnym z około 30-minutowym oknem serwisowym.

Szukasz partnera technicznego do długoterminowego projektu?

Jeśli masz system, który wymaga uporządkowania, migracji albo świeżego spojrzenia na architekturę - mogę pomóc. Pracuję z projektami na różnym etapie dojrzałości i wiem, jak wyglądają realne wyzwania utrzymania systemu w czasie.