Pactown: Decentralized Service Ecosystem Orchestrator - Status Projektu Luty 2026

Pactown pozwala komponować wiele niezależnych projektów markpact w spójne, zdecentralizowane ekosystemy usług. Wersja 0.1.141: Desktop/Mobile builds, IaC, Web Preview. Status: Beta

2026-02-10Softreck

Pactown: Decentralized Service Ecosystem Orchestrator

Status: ⚠️ Beta
Wersja: 0.1.141
Repozytorium: github.com/wronai/pactown
Nowości: Desktop/Mobile builds, IaC artifacts, Web Preview mode

Co to jest Pactown?

Pactown pozwala komponować wiele niezależnych projektów markpact w spójne, zdecentralizowane ekosystemy usług. Każdy serwis definiowany jest w swoim README.md, działa we własnym sandboxie i komunikuje się z innymi usługami przez dobrze zdefiniowane interfejsy.

pip install pactown

Nowości w wersji 0.1.x

Desktop & Mobile Builds

Pactown obsługuje teraz budowanie aplikacji desktopowych i mobilnych bezpośrednio z plików markpact:

PlatformaFrameworkStatus
DesktopElectron✅ Stabilny
DesktopTauri✅ Stabilny
DesktopPyInstaller✅ Stabilny
DesktopPyQt✅ Stabilny
MobileCapacitor✅ Stabilny
MobileReact Native✅ Stabilny
MobileFlutter✅ Stabilny
MobileKivy✅ Stabilny

Linux AppImage fix: Automatyczny patch --no-sandbox dla Electron + generowanie run.sh launchera.

Infrastructure as Code (IaC)

Każdy sandbox generuje deklaratywne artefakty IaC:

  • pactown.sandbox.yaml — specyfikacja runtime, deps, run cmd, health, env
  • Dockerfile — gotowy do produkcji
  • docker-compose.yaml — single-service compose

Kontrolowane przez zmienne: PACTOWN_WRITE_IAC, PACTOWN_WRITE_IAC_MANIFEST, PACTOWN_WRITE_IAC_DOCKERFILE, PACTOWN_WRITE_IAC_COMPOSE.

Web Preview Mode

Aplikacje desktopowe i mobilne mogą być uruchamiane w przeglądarce na serwerach headless (bez DISPLAY). Automatyczna detekcja i zamiana natywnych komend na HTTP server.

Podman Quadlet Support

Pełne wsparcie dla Podman Quadlet - systemd-native container orchestration:

# Inicjalizacja środowiska z Traefik
pactown quadlet init --domain example.com --email admin@example.com
# Interaktywna powłoka deploymentu
pactown quadlet shell --tenant myproject --domain example.com
# Deploy pojedynczego serwisu
pactown quadlet deploy ./README.md \
--domain example.com \
--subdomain api \
--tenant myproject \
--tls
# Lista serwisów
pactown quadlet list --tenant myproject
# Logi
pactown quadlet logs api --tenant myproject

Moduły Deploy

Pactown wspiera wiele backendów deploymentu:

BackendModułStatusUse Case
Quadletdeploy/quadlet.py✅ ProductionVPS, rootless
Podmandeploy/podman.py✅ StabilnyDevelopment
Dockerdeploy/docker.py✅ StabilnyLocal dev
Kubernetesdeploy/kubernetes.py⚠️ BetaCloud scale
Composedeploy/compose.py✅ StabilnyExport

Security Features (Quadlet)

Moduł pactown.deploy.quadlet zawiera 33 funkcje z naciskiem na bezpieczeństwo:

# Sanitization functions
sanitize_name(name) # Container name injection protection
sanitize_env_value(value) # Environment variable escaping
sanitize_env_key(key) # Key validation
sanitize_path(path) # Path traversal protection
sanitize_domain(domain) # Domain validation for Traefik
sanitize_image(image) # Image name validation
sanitize_health_check(ep) # Health endpoint sanitization
validate_volume(volume) # Volume mount validation
check_dangerous_content(c) # Pattern detection

24 testy bezpieczeństwa w tests/test_quadlet_security.py pokrywające:

  • Container name injection
  • Environment variable injection
  • Volume mount injection
  • Traefik label injection
  • Systemd unit injection
  • Tenant isolation
  • Command injection

Aktualny Status Komponentów

KomponentStatusFunkcjeUwagi
CLI✅ Stabilny21Pełny workflow
Quadlet Deploy✅ Production33Security-first
Quadlet Shell✅ Stabilny23Interactive
Orchestrator✅ Stabilny18Parallel start
Resolver✅ Stabilny8Topological sort
Network✅ Stabilny19Port allocation
Registry Client✅ Stabilny21Sync + Async
Parallel✅ Stabilny6Wave execution
Desktop Builder✅ Stabilny4 frameworkiElectron, Tauri, PyInstaller, PyQt
Mobile Builder✅ Stabilny4 frameworkiCapacitor, React Native, Flutter, Kivy
IaC Generator✅ Stabilny3 artefaktyYAML, Dockerfile, Compose
Web Preview✅ StabilnyAuto-detectHeadless server support
Targets✅ Stabilny10 frameworkówTargetPlatform enum + registry

Architektura

┌─────────────────────────────────────────────────────────────────┐
│                     Pactown Ecosystem                           │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐   │
│  │   Web    │───▶│   API    │───▶│ Database │    │   CLI    │   │
│  │ Quadlet  │    │ Quadlet  │    │ Quadlet  │    │  shell   │   │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘   │
│       │               │               │               │         │
│       ▼               ▼               ▼               ▼         │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │        systemd user services (rootless containers)       │   │
│  └──────────────────────────────────────────────────────────┘   │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Komendy CLI

KomendaOpis
pactown up <config>Uruchom wszystkie usługi
pactown down <config>Zatrzymaj wszystkie usługi
pactown status <config>Pokaż status usług
pactown quadlet initZainicjalizuj Quadlet + Traefik
pactown quadlet shellInteraktywna powłoka
pactown quadlet deployDeploy Markdown jako serwis
pactown quadlet listLista serwisów tenanta
pactown quadlet logsLogi serwisu (journalctl)
pactown publishOpublikuj do rejestru
pactown pullPobierz zależności

Porównanie z Alternatywami

CechaPactownDocker ComposeKubernetes
Markdown as Config
Dynamic Ports⚠️
Zero-config deps
Rootless native✅ Quadlet
Systemd integration✅ Quadlet
Learning CurveNiskaŚredniaWysoka
Production Ready

Roadmap

Q1 2026

  • Quadlet production support
  • Security hardening (24+ tests)
  • Interactive shell
  • Desktop builds (Electron, Tauri, PyInstaller, PyQt)
  • Mobile builds (Capacitor, React Native, Flutter, Kivy)
  • IaC artifact generation
  • Web Preview mode (headless servers)
  • Linux AppImage sandbox fix + launcher

Q2 2026

  • Kubernetes integration improvements
  • Multi-region support
  • Metrics & observability
  • Web dashboard

Q3-Q4 2026

  • Hosted registry (pactown.com)
  • Marketplace integration
  • Enterprise features

Linki


Ostatnia aktualizacja: 10 lutego 2026