Skip to content

Weft v0.1.0

Choose a tag to compare

@golovanov-dev golovanov-dev released this 17 Jul 22:42

Initial release: the complete engine as a Composer library (golovanov/weft), with a working
example site that doubles as the documentation.

Added

  • Convention routing: pages/about.php/about, directory indexes, [slug] dynamic
    segments, api/*.php → JSON endpoints under /api/*; no route table.
  • SEO toolkit: title templates, canonical, Open Graph, Twitter cards, hreflang and JSON-LD
    rendered from config with per-page overrides; generated /sitemap.xml and /robots.txt.
  • Optional i18n (off by default): prefix-free default locale, prefixed URLs for others,
    automatic hreflang and canonical redirects, translation arrays in lang/<locale>/.
  • Optional caching with file and Redis stores; Cache::remember() stays a safe no-op when
    caching is disabled.
  • Request tracing: one JSONL timeline per request via golovanov/traceloom, with automatic
    redaction of sensitive keys and an X-Trace-Id response header.
  • Form protection: rate limiting, CSRF tokens, honeypot check and optional Google
    reCAPTCHA v3 (safe pass when disabled).
  • Best-effort alerting to AlertLoop that never blocks a request.
  • Built-in utilities: curl-based HTTP client, thin PDO wrapper with a minimal model, JWT
    (firebase/php-jwt), security headers, string/array/JSON helpers.
  • Vite integration: dev server with HMR in development, hashed production assets resolved
    from the manifest.
  • Two-layer configuration: gitignored environment constants plus committed business config
    read via config('dot.keys').
  • example/ — a complete working site that is also the engine's documentation
    (example/content/en/).