Skip to content

bootgly/bootgly-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

27 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

bootgly-logo

Bootgly Web

Bootgly Web Platform.

Bootgly License

Bootgly Web Platform composed by the WPI interface.

The opinionated web layer over Bootgly\WPI: WPI stays deliberately low-level; this platform is where the opinions live β€” controllers, resource routing, problem+json errors, static assets and view conventions. Everything it wires remains plain WPI underneath.

Getting started

Use the canonical installer β€” it sets up a bootgly.kit workspace, where the platforms are unified, and asks which ones to enable (pick Web):

curl -fsSL https://bootgly.com/install | bash

From the kit, the project wizard imports this platform's demo projects (Import projects from Platforms β†’ Web):

php bootgly project create

⚠️ Using this repository directly is discouraged β€” bootgly.kit is the starting point: it is where the Bootgly core and the platforms are mounted and booted together. See Getting started. Cloning bootgly-web standalone is only meant for developing the platform itself.

Modules

  • Web\App β€” the MVC application shell: an opinionated boot of the canonical HTTP server with a default middleware stack (SecureHeaders, RequestId, BodyParser, CSRF), Controller base + lazy dispatch (fresh instance per request), Controllers::map() resource routing (HTML-form-aware), Statics (inline assets with the right media type) and Views conventions (default layout + shared exports).
  • Web\API β€” the REST shell: Action (invokable controller-action dispatcher), Routes::map() REST resource routing, Problem/Problems (RFC 9457 problem details as throwable + middleware error boundary) and Resource transformers (with core pagination envelope reuse).

Demo projects (exportable)

Project Port Shows
Auth 8087 Session/cookie authentication: registration, e-mail verification, login + remember-me, password reset/change, per-route rate limits, SQLite (zero setup)
Blog 8080 Full MVC loop: controllers, ORM models, views, Session flash + masked CSRF forms, SQLite (zero setup)
Chat 8085 Realtime rooms over the WebSocket server β€” the client page is served on the same port
Site 8088 Landing pages: controller-dispatched views, layouts, inline statics, no database
Tasks 8090 REST API: resources, problem+json, JWT-protected mutations, pagination (X-Total-Count/Link)

After importing them in the kit:

php bootgly project Blog start

Developing the platform

Only for working on bootgly-web itself (with the bootgly core as a sibling checkout):

./bootgly test                                # test suites
vendor/bin/phpstan analyse -c @/phpstan.neon  # static analysis
./bootgly project Blog start -f               # run a demo in foreground

Documentation β€” see the Web Platform guide and the Web manual pages.

About

πŸ—οΈ Bootgly Web 🌐 platform (bootable)

Resources

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages