Zadanie: Zapewnić poprawne renderowanie warstw tekstowych z aplikacji webowej (https://sajt) w końcowym pliku wideo (webm VP9+alpha) z zachowaniem czcionek, kolorów, czasów animacji i osiągnięciem pełnej tożsamości z podglądem klienta.
KONTEXT PROJEKTU:
Frontend: React (Vite),
Backend: FastAPI,
Magazyn: MinIO (zgodny z S3),
Baza danych: PostgreSQL,
Konteneryzacja: Docker, docker-compose,
Dla lokalnego rozwoju używany jest docker-compose.yml (mapa projektu zostanie dostarczona wykonawcy).
Animacja warstw tekstowych jest realizowana przez Staggerchildren w Framer Motion (efekt pojawiania się tekstu znak po znaku z lewej do prawej). Kolor tekstu jest ustawiany dynamicznie w zależności od wybranego szablonu kartki.
WYMAGANIA DOTYCZĄCE REALIZACJI:
Wyjście: końcowy plik formatu webm (VP9 z kanałem alfa), częstotliwość - 30 FPS, rozdzielczość 1080x1920 px. Pełna tożsamość z podglądem warstw tekstowych (czcionki, kolory, czasy, animacja) bez utraty jakości i efektów animacji.
Proces: plik webm jest generowany na backendzie i zapisywany w folderze magazynu MinIO do kolejnego etapu – wspólnego renderowania wszystkich warstw. Klientowi/użytkownikowi na tym etapie nic nie jest wydawane, konwersja warstw tekstowych powinna być przeprowadzana tylko po otrzymaniu webhooka o płatności w trybie online bez późniejszego zapisywania na dysku plików pośrednich (sekwencji png i innych materiałów towarzyszących). Płatność jest symulowana przez tymczasowy przycisk wyzwalacza. Proces musi być zautomatyzowany bez użycia zewnętrznych programów na serwerze/lokalnie (Bodymovin w After Effects itp.) i bez udziału pracy ręcznej. Wszystko powinno działać automatycznie na backendzie po wyzwoleniu – udanej płatności. Czas konwersji powinien wynosić około 30 sekund, oczekiwana waga pliku webm to około 50 mb.
Miejsce zapisu pliku: powinno być określane przez parametr lub zmienną środowiskową, aby można je było skonfigurować bez zmiany kodu.
Elastyczność: Kod powinien być napisany uniwersalnie: nowe niestandardowe czcionki z obsługą kazachskiej cyrylicy powinny być automatycznie podłączane bez potrzeby modyfikacji logiki renderowania. System powinien pobierać parametry tekstowe dynamicznie, a nie „wbudowywać” konkretny plik w kod.
Dla informacji: dodawanie nowych szablonów kartek i czcionek jest już zrealizowane przez panel administracyjny. Wdrażane są jednym przyciskiem automatycznie i poprawnie bez ingerencji w kod.
SPRAWDZENIE WYNIKU:
Skrypt po podłączeniu do strony produkcyjnej w ciągu 3 dni roboczych będzie testowany poprzez użycie 5 działających i 3 nowych szablonów kartek, 5 działających i 3 nowych czcionek, 5 wariantów długiego i krótkiego tekstu z kazachską cyrylicą. Praca będzie uznawana za wykonaną tylko po pełnym spełnieniu wyniku z powyższymi wymaganiami dotyczącymi realizacji.
Proszę o przedstawienie swojego budżetu i terminów. Kandydatów proszę od razu opisać, jakimi narzędziami będzie rozwiązane zadanie.