Guide/guides
Glossary
Short definitions for common terms in the Guren docs.
Glossary
Short definitions for common terms in the Guren docs.
Stack
- Bun: JavaScript/TypeScript runtime used to run and build the app.
- Hono: Lightweight HTTP server; Guren builds its routing and controllers on top.
- Inertia.js: Bridges server responses and SPA navigation by sending page props.
- React: UI library used for pages.
- Vite: Frontend dev server and build tool.
- Drizzle ORM: Type-safe ORM; Guren models connect to Drizzle schemas.
App structure
- MVC: Model, View, Controller separation.
- Route: A path + HTTP method mapping to a controller or handler.
- Controller: Class that handles requests and returns responses.
- Model: Class tied to a database table via
static table. - View: React page in
resources/js/pages/. - Middleware: Code that runs before or after a request.
- Provider: Boot-time registration for services and configuration.
- Context: Hono
Contextwith request and response helpers.
Database
- ORM: Maps tables to classes.
- Schema: Table definitions in
db/schema.ts. - Migration: SQL files that apply schema changes.
- Seeder: Script to insert sample data.
- Database URL: Connection string in
.envasDATABASE_URL. - RQB (Relational Query Builder): Drizzle query builder for joins and aggregates.
- Eager load: Fetch related records in one go (e.g.
with()).
Frontend
- SPA: Single page app navigation without full reloads.
- SSR: Server-side rendering for the first HTML response.
- Props: Data passed to React components.
- HMR: Hot reload of changes during development.
- Inertia page: A React component referenced by
this.inertia(...).
CLI
- create-guren-app: CLI to scaffold a new app.
- guren CLI:
bunx guren make:*commands for generators and tooling.