class

Analyzer::Javascript::Honox

Inherits Analyzer::Javascript::JavascriptEngine < Analyzer < FileHelper < Reference < Object

HonoX routes every module under app/routes/ by its file path:

app/routes/index.tsx → GET / app/routes/api/users.ts → its default export (GET) and export const POST = createRoute(...) app/routes/posts/[id].tsx → GET /posts/{id} app/routes/(marketing)/about.tsx → GET /about

_renderer, _middleware, _error, _404, $island and --prefixed modules are not routes. A default-exported new Hono() or createApp() (honox/factory, hono/factory) app is mounted at the path.

Constants

EXTENSIONS = [".ts", ".tsx", ".js", ".jsx"]
FACTORY_APP = /\bcreateApp\s*\(/

createApp() only counts when it comes from a Hono factory, not Vue's.

FACTORY_IMPORT = /['"]honox?\/factory['"]/
HONO_APP = /\bnew\s+Hono\b/

Class methods

tech_name
Source

Instance methods

analyze
Source
tech

Instance-side view of the same declaration. The per-file rescues live on this base class, which has no way to name the analyzer that is running inside them, so a skipped file could not be attributed to a tech. Deriving it from analyzer_for keeps the name written exactly once.

Source