filipebraida/adonisjs-starter-kit

Starter kit for AdonisJS projects using a monorepo setup

95Stars on the repository
17Mods indexed here, across every type
26d agoLast push, which is what freshness is scored on
MITLicence, which decides whether bodies are shown

actions-events

01

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Action + event pattern for AdonisJS. Actions are single-purpose classes with .handle(input); they never touch HttpContext and never call side-effect code (mail, notifications, transmit) directly — they emit a domain event and a listener wired in /start/events.ts runs the effect. Use when adding a new action, wiring a…

not rated 95 +1 26d ago A 111 tokens original MIT

attachment

02

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

File uploads with derived variants in an AdonisJS app via @jrmc/adonis-attachment. @attachment() decorator on a Lucid model + converters config drives image resize/reformat (e.g. webp thumbnails). URLs are pre-computed on read via a model helper. Use when adding an upload field, changing a converter, testing…

not rated 95 +1 26d ago A 107 tokens original MIT

authorization

03

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

RBAC + Bouncer pattern in an AdonisJS + Inertia app. Capabilities live in a PERMISSIONS const, role slugs in ROLES; a WithRoles mixin composes into User to expose hasPermission / hasRole / syncRoles; BasePolicy subclasses gate routes; the frontend consumes a typed useCan() prop. Escalation is protected in depth. Use…

not rated 95 +1 26d ago A 145 tokens original MIT

crud

04

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Build an end-to-end CRUD stack in AdonisJS + Inertia: resource route → thin controller → VineJS validator → Bouncer policy → single-purpose action → transformer variant → Inertia page. Trigger on: "add CRUD for X", "create resource", "list/create/edit/delete X", "resource endpoint".

not rated 95 +1 26d ago A 66 tokens original MIT

git-commit

05

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Execute a git commit that follows semantic conventional-commits — type, optional scope, imperative subject in English under 70 chars, body explaining WHY. User-invoked via /git-commit or "/commit".

not rated 95 +1 26d ago A 47 tokens original MIT

i18n

06

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Locales are declared in config/i18n.ts (supportedLocales, defaultLocale, loaders). Translation JSON lives per module at app/ /resources/lang/ / .json. Keys are namespaced by module (common.layout.navMain.dashboard), so the file at app/common/resources/lang/en/common.json doesn't repeat common. inside — the loader adds…

not rated 95 +1 26d ago A 105 tokens original MIT

inertia

07

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Inertia + React 19 patterns in an AdonisJS app. Pages resolve from module dirs (app/ /ui/pages/), shared props flow from a middleware, forms use useForm + Tuyau urlFor for type-safe URLs, and modals go through a controller helper. Use when adding an Inertia page, writing a form, reading shared props, or wiring a route…

not rated 95 +1 26d ago A 122 tokens original MIT

layout-shells

08

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Layout shells in an AdonisJS + Inertia app. Instead of a runtime layout chooser, each context has its own purpose-built shell that coexists as a distinct React component. Every page picks its shell explicitly by import. Use when adding a new page (which shell to import), when adding a new area of the app (which shell…

not rated 95 +1 26d ago A 103 tokens original MIT

mail

09

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Transactional email in an AdonisJS app — @adonisjs/mail classes extending BaseMail, MJML templates via a shared @email.layout component, and mailContext() for appName/appUrl. Never author raw HTML+CSS blocks. Use when adding a new email, editing an existing template, testing mail with mail.fake(), or wiring the SMTP…

not rated 95 +1 26d ago A 107 tokens original MIT

migrations

10

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Lucid migrations in this starter kit. Convention here is edit the existing create table.ts migration + run migration:fresh, not layering altertable migrations on top — this is a starter kit, no production data. Migration paths are declared per module in config/database.ts. app/core/database/schema.ts is auto-generated…

not rated 95 +1 26d ago A 141 tokens original MIT

module-scaffolding

11

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

How to add a new module to this AdonisJS monorepo — prefer node ace make:module, which scaffolds and wires every touchpoint. User-invoked via /module-scaffolding when wiring a module by hand or adding a piece later.

not rated 95 +1 26d ago A 59 tokens original MIT

notifications

12

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

In-app notifications + realtime SSE in an AdonisJS + Inertia app. Stack: @facteurjs/adonisjs for the notification classes and delivery channels + @adonisjs/transmit for the SSE transport. Notifications persist to Postgres and push to a per-user SSE channel. Bell + unread badge in the logged-in shell. Emission goes…

not rated 95 +1 26d ago A 130 tokens original MIT

queries

13

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Read-only query patterns in an AdonisJS + Inertia app — two flavors. List queries for CRUD tables (Lucid paginator with search + filter + sort). Read models for aggregate screens (dashboards, reports) with one query per business concept composed by the controller. Types live in the query file and cross to the frontend…

not rated 95 +1 26d ago A 106 tokens original MIT

routes

14

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Route definitions in an AdonisJS module. Prefer router.resource(...) for CRUD verbs; put verb-only actions (activate, publish, finalize) as separate router.post/get/delete(...). Always pin numeric params with router.matchers.number() — otherwise a non-numeric URL falls through to the controller and blows up on the…

not rated 95 +1 26d ago A 98 tokens original MIT

testing

15

filipebraida/adonisjs-starter-kit

Skill Claude CodeCodex

Japa test patterns for an AdonisJS app. Functional specs hit real Postgres wrapped in per-test transactions; unit specs stub deps with sinon. Fakes are mandatory for anything that reaches out (mail, drive, emitter, transmit). Trigger on: "write test", "add spec", "cover with tests", "how do we test X", "mock", "fake"…

not rated 95 +1 26d ago A 82 tokens original MIT

At most 3 mods per repository are shown here, and a mod shipped inside a plugin is left to that plugin's page — the rest are on their repository pages: