Detection
Project types
Section titled “Project types”| Type | Meaning |
|---|---|
cli | Command-line tool. |
library | Exported module/library. |
http_server | HTTP server or route-based backend. |
unknown | No strong signal found. |
Detection signals include:
package.jsonwith abinfield →cli- source files with a shebang in common entrypoint files →
cli process.argv,Bun.argv, orparseArgsusage →cli- imports from
express,fastify,hono,elysia, or@hono/node-server→http_server - route calls like
app.get(...),router.post(...),server.use(...)→http_server - exported functions, classes, constants, default exports,
package.jsonexports,main, ormodule→library
HTTP detection wins while scanning source files. CLI package detection via package.json bin wins before source scanning.
Test files
Section titled “Test files”Suitener treats these as test files:
- files under
tests/ - files under
__tests__/ *.test.ts,*.test.tsx,*.test.js,*.test.jsx,*.test.mts,*.test.cts*.spec.ts,*.spec.tsx,*.spec.js,*.spec.jsx,*.spec.mts,*.spec.cts*_test.go
Test commands
Section titled “Test commands”Detected in order:
package.jsonscripts.test→bun run testpackage.jsonscripts.test:unit→bun run test:unit- JS/TS test files →
bun test go.modor Go test files →go test ./...Cargo.toml→cargo test
If no runnable command is detected, check falls back to stub generation.
Ignored directories
Section titled “Ignored directories”node_modules.gitdistbuildsuitener-resultssuitener-stubs
Recognized source extensions
Section titled “Recognized source extensions”.ts.tsx.js.jsx.mjs.cjs.go.rs
Recognized manifests
Section titled “Recognized manifests”package.jsonCargo.tomlgo.mod