Saplo ma gotowe stacki w katalogu, ale możesz wdrożyć dowolną aplikację - także taką, której nie ma na liście - przez git push. Możesz też składać aplikacje fullstack z kilku części w jednym Boxie.
Aplikacja spoza katalogu (Twój własny kod)
Trzy drogi, od najprostszej:
- Node.js / framework + git - stwórz aplikację typu Node.js (generic) albo dowolny framework (Next, React, Vue...), podłącz repozytorium i rób
git push. Saplo buduje i uruchamia Twój kod. - Docker - aplikacja typu Docker. Wrzucasz własny
docker-compose.yml, Saplo go uruchamia. Dowolny obraz, dowolny język. - saplo.yaml - plik w repozytorium opisuje build i start (buildpack). Patrz Plik saplo.yaml.
Aplikacje fullstack (frontend + backend)
Fullstack (np. Next.js + Django, React + Django, Next.js + WordPress headless) to po prostu dwie aplikacje w tym samym Boxie, każda z własną subdomeną. Spinasz je zmienną środowiskową:
- Postaw backend (np. Django) - opcjonalnie z bazą (zaznacz ją w Połącz z bazą).
- Postaw frontend (np. Next.js).
- Na frontendzie ustaw zmienną wskazującą URL backendu:
Frontend woła backend po jego publicznym URL. Dla WordPress headless to samo: stawiasz WP, a frontend (Next/Nuxt) czyta jego REST API albo GraphQL.
Fullstack przez Claude (MCP)
Powiedz Claude'owi: "postaw mi fullstack: Django z Postgresem jako backend i Next.js jako frontend, spięte". Claude wykona kroki: utworzy bazę, backend z linkiem do bazy, frontend, i ustawi zmienną z adresem backendu. Wzorzec jest opisany w samym narzędziu MCP saplo_create_app.
Jak działają szablony katalogu (zaawansowane)
Każdy stack w katalogu to przepis - folder z dwoma plikami:
manifest.toml- deklaracja: nazwa, runtime (php/node/python), czy wystawia port, czy potrzebuje bazy/domeny, opcje konfiguracyjne (np. wybór wersji PHP), a dla baz sekcja[service].install.sh- skrypt instalacyjny uruchamiany w Boxie (jako root). Dostaje zmienneSAPLO_APP_DIR,SAPLO_DOMAIN,SAPLO_PORT,SAPLO_DB_*i buduje aplikację.
Silnik na podstawie manifestu sam ustawia nginx (statyczny / proxy na port / php-fpm), domenę, SSL i pulę zasobów. Tworzenie własnych przepisów oraz katalog społecznościowy to kierunek na kolejne wydania - jeśli chcesz dorzucić stack, napisz do nas.
localhost (frontend → backend → baza), a publicznie wystawiasz tyle subdomen, ile chcesz.