CodeVetter
← All unpacks
CodeVetter · Repo Unpack evidence

adonisjs/core

Scanned commit e1b2357eac dated 2026-10-01 — last upstream commit. Generated by codevetter 1.15.0 on 2026-10-02.

github.com/adonisjs/core ↗ · 230 files · 683 KB

@adonisjs/core Featured sponsors Fullstack MVC framework for Node.js AdonisJs is a fullstack Web framework with focus on ergonomics and speed .

Deep analysis by cli:codex via the codex CLI on 2026-10-02 (501s) — every claim below links to its cited source files. Source inspection; upstream code and tests were not executed.

Overview

@adonisjs/core 7.5.2 is the TypeScript integration layer for AdonisJS, a Node.js framework for web applications and services. It connects application lifecycle management, dependency injection, HTTP handling, validation, encryption, templates, and developer commands through providers and stable package exports. Distinctive features include lazy command loading, configurable scaffolding, generated route and transformer types, and machine-oriented CLI output.

System map

The repository packages the integration surface of AdonisJS rather than implementing every framework subsystem locally. Ignitor creates web, console, and test processes, while providers register the services those processes consume. Package exports separate public modules, service facades, providers, factories, helpers, and commands. Persistent outputs inspected here are generated application files and development artifacts; token persistence is delegated to consumers. Distribution and release are centered on an npm ESM package.

Feature catalog

The developer-facing product includes application startup APIs, scaffolding, package configuration, inspection commands, development serving, production builds, and test orchestration. HTTP integrations add VineJS request validation and Edge rendering to dependency-provided request and routing APIs. Security utilities include configurable hash and encryption drivers and verification-token helpers. Generated declarations connect server routes and transformers to application type checking. This catalog reflects the inspected public surfaces, not exhaustive dependency behavior.

All 15 feature catalog claims →

Data flow

Application-root URLs and RC configuration feed lifecycle creation and lazy container bindings. Incoming HTTP traffic crosses from a Node server into the dependency-provided framework handler, while local validation adapters assemble request data for VineJS. CLI inputs become command state, generated entities, AST transformations, or assembler operations. Development routing data is written to disk and announced to the parent process; standalone codegen passes equivalent serialized routes in memory. Verification tokens separate public secrets from hashes intended for consumer-owned persistence.

Behavior traces

The principal flows were followed across entrypoints, providers, adapters, and output code. HTTP startup establishes lifecycle and dependency ordering before listening. Request validation moves from a provider-installed request macro to context-derived data and a compiled VineJS validator. Controller generation moves from Ace dispatch through command lifecycle and stub generation to a destination file. Additional traces cover generated route persistence, codegen ordering, package setup, shutdown, and test startup.

Testing signals

Tests and CI were inspected, not executed; no passing result or coverage percentage is asserted. The Japa runner discovers repository specs and enables assertion, type, filesystem, and snapshot plugins. Inspected tests cover lifecycle transitions, actual HTTP interactions, validation, scaffolding, codegen order, file-format preservation, and encryption compatibility. Some tests perform real package installation or bind ports, so execution is not purely isolated computation. The inventory and coverage assessment are bounded rather than exhaustive.

Risk map

These are source observations and explicitly labeled hypotheses, not confirmed vulnerabilities. Sensitive boundaries include network listeners, package installation and hooks, arbitrary replacement-file reads, generated-file writes, home-directory REPL history, cryptographic compatibility, and diagnostic HTML. Lifecycle and generated-artifact ordering create broad coupling between providers, services, and developer tooling. No exploit, production configuration, dependency implementation, or runtime outcome was verified.

All 13 risk map claims →

Extension points

Extension is organized around application providers, container bindings, command loaders, macros, configuration factories, and assembler hooks. Types expose open interfaces for application-specific services and registries. Stubs and codemods let packages add generated entities and modify consumer applications. The public export map and compiled command index connect these extension mechanisms to package distribution.

Contributor handoff

Work from the pinned source and preserve the boundary between local integration code and dependency-owned implementations. Read lifecycle, provider, and service files together before changing startup or container behavior. Generator changes require reviewing commands, codemods, templates, generated types, and package output configuration as appropriate. Tests and CI were inspected, not executed; this report is a bounded source investigation and supplies no passing-test evidence. Future verification must respect authorization because some repository tests install packages, write fixtures, and open listeners.

Languages

LanguageFilesShare of source
TypeScript19499%
YAML6docs/config
JSON4docs/config
Markdown2docs/config
JavaScript11%

Start reading here

Probable source entrypoint: index.ts — inferred from the directory tree and manifest, not the upstream docs.

Source roots

src/ (22 files)

Source layout — src/

PathFiles
src/assembler_hooks/1
src/cli_formatters/1
src/helpers/8
src/ignitor/4
src/test_utils/2
src/config_provider.ts1
src/debug.ts1
src/exceptions.ts1
src/types.ts1
src/utils.ts1
src/vine.ts1

Repository structure

Top-level pathFiles
tests/58
modules/40
commands/25
src/22
stubs/21
types/14
services/13
factories/12

Docs found: LICENSE.mdREADME.md

Package

package.json — @adonisjs/core v7.5.2, 63 declared dependencies.

@adonisjs/ace@adonisjs/application@adonisjs/assembler@adonisjs/bodyparser@adonisjs/config@adonisjs/encryption@adonisjs/env@adonisjs/eslint-config@adonisjs/events@adonisjs/fold@adonisjs/hash@adonisjs/health

CI & config entrypoints

Structural health signals

Average score 9.2/10 across 96 analyzed source files; 1 hotspot surfaced.

These are deterministic review leads — size, churn, and structural signals — not proof of a bug in this project.

Recent history