Search by

varsite / cms

varsite

Moduł CMS dla Varsite Platform — strony treści z API publicznym.

Package info

github.com/varsite/cms

pkg:composer/varsite/cms

Statistics

Installs: 14

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v0.11.0 2026-08-11 08:02 UTC

This package is auto-updated.

Last update: 2026-09-11 08:07:45 UTC


README

Moduł treści dla Varsite Platform — referencyjna implementacja modułu.

composer require varsite/cms
php artisan varsite:module install cms

Po instalacji panel zyskuje ekran „Strony", grupę ustawień i wpisy w palecie poleceń oraz wyszukiwarce globalnej. Bez żadnej zmiany w rdzeniu i w panelu.

Co udostępnia

Element Szczegóły
Zasób panelu cms.pages — lista z wyszukiwaniem i filtrem statusu, formularz, usuwanie
Ustawienia cms.ogolne — strona główna, sufiks tytułu SEO, domyślny opis
API administracyjne /api/v1/admin/cms/pages (CRUD, wymaga uprawnień)
API publiczne /api/v1/cms/pages, /api/v1/cms/pages/{slug} — wyłącznie strony opublikowane
Uprawnienia cms.view, cms.create, cms.update, cms.delete, cms.settings

Wzorzec dla kolejnych modułów

CmsServiceProvider pokazuje komplet rozszerzeń w jednym miejscu:

  1. TożsamośćModuleManager::register(new CmsModule()): klucz, etykieta, uprawnienia.
  2. TrasyModuleRouteRegistrar osobno dla API administracyjnego i publicznego.
  3. PolitykaGate::policy(...); moduł deklaruje identyfikatory uprawnień, o ich posiadaniu decyduje wyłącznie rdzeń.
  4. MożliwościResourceCapability i SettingCapability w CapabilityRegistry.

Nawigacja, paleta poleceń i wyszukiwarka globalna wynikają z możliwości — moduł nie deklaruje pozycji menu ani nie implementuje API wyszukiwania. Wystarczy Filter::search([...]) w deklaracji zasobu.

Konsumpcja przez frontend klienta

const { data } = await fetch(`${API}/v1/cms/pages/o-nas`).then((r) => r.json());
// data: { slug, title, excerpt, content, seo: { title, description }, published_at }

Treść zapisywana jest jako Markdown; renderowanie należy do frontendu klienta — platforma nie narzuca sposobu prezentacji.