{
    "schema": "eupdate-package-specification-v1",
    "author": "PB <pavel.bartos.pb@gmail.com>",
    "project_id": "fdc330a6f6d3dc65",
    "software_id": "esite",
    "software": "eSite",
    "module": null,
    "release_id": "9b46de77e9312dfc36a71fac9f07b253",
    "version": "0.1.0-alpha.1",
    "release_date": "2026-10-29",
    "published_at": "2026-10-29T18:46:42+00:00",
    "bytes": 150773,
    "sha256": "a39d2c33a419f315b8dc00c3303b6a823106b3b25c36bf11cfbbb2084d37479a",
    "file_count": 109,
    "languages": {
        "PHP": {
            "bytes": 172019,
            "files": 37
        },
        "JavaScript": {
            "bytes": 62567,
            "files": 3
        },
        "CSS": {
            "bytes": 33330,
            "files": 13
        },
        "HTML": {
            "bytes": 14963,
            "files": 11
        },
        "Python": {
            "bytes": 5665,
            "files": 1
        }
    },
    "installation_url": "https://update.estudium.eu/package.php?software_id=esite&version=0.1.0-alpha.1",
    "update_url": "https://update.estudium.eu/package.php?software_id=esite",
    "install_json": {
        "schema": "esite-package-v1",
        "software": "eSite",
        "software_id": "esite",
        "version": "0.1.0-alpha.1",
        "release_date": "2026-10-29",
        "description": {
            "cs": "Modulární editor webů pro eWeb a eUpdate. Vývojová alpha.",
            "en": "Modular website editor for eWeb and eUpdate. Development alpha."
        },
        "author": {
            "name": "PB",
            "email": "pavel.bartos.pb@gmail.com",
            "website": ""
        },
        "project": {
            "name": "eSite",
            "website": "https://www.estudium.eu"
        },
        "license": "MIT",
        "license_custom": "",
        "package": {
            "type": "release",
            "target": "hosting",
            "access": "open",
            "requires_license": false,
            "visibility": "public"
        },
        "requirements": {
            "php": ">=8.0 <9.0"
        },
        "compatibility": {
            "os_types": [
                "source"
            ],
            "any_linux_distribution": false,
            "architectures": [
                "amd64",
                "arm64"
            ],
            "os_versions": [],
            "distribution_ids": [],
            "distributions": [],
            "native_windows_supported": false,
            "native_macos_supported": false
        },
        "archive_metadata": {
            "working_directory": ".",
            "publisher": "dcf6d41fbcdf0e16",
            "updated_at": "2026-10-29T18:46:42+00:00",
            "application_author": "PB <pavel.bartos.pb@gmail.com>"
        },
        "installation": {
            "web_root": "public",
            "mode": "manual",
            "commands": {
                "linux": {
                    "supported": false,
                    "mode": "unsupported",
                    "command": null
                },
                "windows": {
                    "command": null,
                    "supported": false,
                    "mode": "unsupported"
                },
                "macos": {
                    "command": null,
                    "supported": false,
                    "mode": "unsupported"
                },
                "other": {
                    "command": null,
                    "supported": false,
                    "mode": "unsupported"
                },
                "source": {
                    "command": null,
                    "supported": false,
                    "mode": "manual"
                }
            },
            "instructions": "See README.md; initial eWeb deployment uses bin/install.php, subsequent updates use eSite admin."
        },
        "runtime": {
            "php_extensions": [
                "json",
                "mbstring",
                "fileinfo",
                "curl",
                "zip"
            ],
            "optional_extensions": [
                "pdo_mysql"
            ],
            "data_format": "json",
            "document_root": "public"
        },
        "verification": {
            "status": "source-alpha",
            "php_runtime_tests": "not_run",
            "live_eweb_eupdate": "not_run"
        },
        "documentation": [],
        "homepage": "https://www.estudium.eu"
    },
    "readme": "# eSite 0.1.0-alpha.1\n\nPrvní vývojový základ modulárního editoru webů pro PHP 8, eWeb a eUpdate. Jedna instalace obsluhuje jednu doménu. Obsah a nastavení zůstávají v JSON; bazar a články mohou používat MySQL. Obsahuje deset responzivních vzhledů v `html/` a integraci `pavel852/php-templates` 2.6.1.\n\n**Stav:** zdrojová alpha určená pro testovací doménu. PHP ani Composer nejsou v prostředí autora této dodávky dostupné, proto nebyl proveden PHP lint, spuštění aplikace, SQL test ani živá integrace eUpdate/eWeb. JavaScript a datové/balíčkové struktury byly kontrolovány samostatně. Automatická kontrola přístupu neumožnila dokončit prohlížečové QA. Přiložené testy je nutné spustit na PHP serveru.\n\n## Obsah\n\n- `docs/PROJEKT_CZ.md`: architektura, úplná specifikace a konkrétní hranice alpha verze.\n- `docs/EUPDATE.md`: registrace jádra/modulů, licencování, check-in a balíčky.\n- `docs/TEMPLATES.md`: skutečné API knihovny, původ offline závislostí a Composer.\n- `html/`: 10 vzhledů. Každý obsahuje HTML šablonu, CSS a JSON manifest.\n- `public/`: jediný veřejný document root, frontend controller a administrační assets.\n- `src/`: JSON úložiště, správci obsahu, auth, moduly, SQL adaptér, zálohy a aktualizace.\n- `tests/run.php`: připravené PHP regresní testy bez sítě.\n\n## Instalace na testovací eWeb\n\nPožadavky: PHP 8.0–8.x, `json`, `mbstring`, `fileinfo`, `curl`, `zip`; pro MySQL též `pdo_mysql`. CLI PHP i PHP-FPM musí mít stejné potřebné moduly. Souborové zámky vyžadují lokální filesystem; aktivní/aktivní zápis z více serverů není podporován.\n\n1. Rozbalte core ZIP do neveřejné pracovní složky. Neměňte document root existujícího produkčního webu.\n2. Pod uživatelem domény, pod kterým běží PHP-FPM, spusťte:\n\n```bash\nphp bin/install.php --target=/srv/web/test.cz/esite --origin=https://test.cz --login=admin --name=eSite\n```\n\nHeslo o délce alespoň 12 znaků se načte ze standardního vstupu; nevkládá se do argumentů procesu. Instalátor vytvoří privátní data, náhodnou identitu a check-in klíč. Odmítne již existující instalaci. Přiložený offline snapshot knihoven umožňuje instalaci bez sítě k Composeru.\n\n3. V eWeb nastavte document root na `/srv/web/test.cz/esite/current/public`. Doplňte správný socket PHP poolu podle `packaging/nginx.conf.example`. Pro Apache je přiložen `.htaccess`; povolte mod_rewrite a příslušný AllowOverride.\n4. Pro PHP upload nastavte `upload_max_filesize=100M`, `post_max_size=110M`; pro import větších záloh je potřeba vyšší limit podle velikosti souboru. `memory_limit` nastavte nejméně na `256M`; u větších JSON katalogů a záloh ověřte reálnou spotřebu. AI volání může vyžadovat delší timeout poolu i proxy.\n5. Otevřete `https://test.cz/admin`, zkontrolujte nastavení názvu, domény a jazyků. V Nastavení zadejte AI připojení a podle potřeby MySQL. Aplikace neposkytuje veřejný webový instalační formulář.\n6. Odešlete check-in a schvalte instalaci v eUpdate. Samostatné modulové ZIPy nahrajte do projektu `esite` jako placené moduly. Přiřaďte licence, znovu načtěte nabídku a nainstalujte modul přes administraci.\n7. Přidejte cron podle `packaging/cron.example`. Kontroluje eUpdate denně, tvoří denní zálohu a ponechává posledních 14 ZIPů.\n\nNespouštějte PHP pool jako root. Privátní JSON, média a zálohy žijí v `shared/var` mimo veřejný kořen; webserver nesmí zpřístupnit celý instalační adresář. Dokumentace nepožaduje vypnutí kontroly HTTPS certifikátů ani práva 0777.\n\n## Kontroly na PHP serveru\n\n```bash\nfind src public bin tests modules -name '*.php' -print0 | xargs -0 -n1 php -l\nphp tests/run.php\nnode tests/admin-smoke.cjs\nphp /srv/web/test.cz/esite/current/bin/console.php status\nphp /srv/web/test.cz/esite/current/bin/console.php checkin\nphp /srv/web/test.cz/esite/current/bin/console.php backup\n```\n\nTesty připravují vlastní dočasný adresář a nevyžadují produkční přístupy. Samostatně ověřte přihlášení, mobilní navigaci všech motivů, upload, XML, souhlasy měření, JSON/MySQL režim, migraci, zálohu a obnovu. Funkční test aktualizace potřebuje druhé vydání a skutečné eUpdate.\n\n## Návrat na předchozí kód\n\nPředchozí složka pod `releases/` zůstává zachována. Pod uživatelem domény lze připravit nový symbolický odkaz a atomicky jím nahradit `current`. To vrací kód; nevrací samo data. Při budoucích změnách schématu bude nutná odpovídající obnova zálohy. Obnova ZIP v alpha verzi vyžaduje přesně stejnou verzi eSite.\n\n## Rozsah první verze\n\nEditor je blokový, ne volné kreslicí plátno. Moduly obsahují zdrojovou implementaci a placené manifesty, jejich ceny a licenční podmínky musí stanovit vlastník. Registrace nemá ověřovací e-mail; seznamy v administraci a uživatelském účtu zatím zobrazují prvních 20 záznamů. Automatické nasazení do konkrétního eWebu a jeho případného clusteru není ověřeno. Detaily a další vývojové kroky jsou v `docs/PROJEKT_CZ.md`.\n\nNové jádro a moduly nemají automaticky přidělenou veřejnou softwarovou licenci; o podmínkách rozhodne vlastník eSite. Původní knihovny v `vendor/pavel852` si zachovávají své licence MIT.",
    "download_url": "https://update.estudium.eu/download.php?project=fdc330a6f6d3dc65&release=9b46de77e9312dfc36a71fac9f07b253",
    "package_target": "hosting",
    "requirements": {
        "php": ">=8.0 <9.0"
    },
    "license": {
        "id": "MIT",
        "name": "MIT",
        "custom_text": ""
    },
    "deployment": {
        "archive_root": ".",
        "web_root": "public"
    },
    "project_type": "application",
    "hosting": null
}