RepoLens

Gallery · Architecture explained · Score · Go

Fiber architecture: modules, API surface, dependency graph

Express-inspired web framework written in Go. Generated from gofiber/fiber at 6e90e08, MIT.

Files
202
Modules
87
API routes
0
Documents
17

GoFiber

Executive Summary

Stakeholders · High-level overview for leadership, product, and stakeholders

At a Glance

AspectSummary
WhatFiber is a early-stage command-line tool
Built WithFiber + Go
Scale87 modules across 202 files
MaturityEarly-stage (1/3 indicators)

What This System Does

Fiber is a Fiber command-line tool built with Go. It operates as a command-line interface, enabling users to interact with the system through terminal commands. This architecture is optimized for automation, scripting, and integration into CI/CD pipelines.

Business Capabilities

The system is organized around 10 functional domains, each representing a distinct business capability:

DomainCapabilityScale
API Layerpath middleware/proxy matches middleware31 modules, 101 files
OtherUncategorized module42 modules, 81 files
Authentication & Identitypath middleware/session matches session1 modules, 6 files
Servicespath client/client.go matches client6 modules, 6 files
Plugin Systempath addon/retry matches addon1 modules, 2 files
State Managementpath internal/contextvalue matches context2 modules, 2 files
+4 moreAdditional functional areas—

Technical Foundation

LayerTechnologiesPurpose
ApplicationFiberCore runtime framework
LanguageGoPrimary development language

Module Composition

The codebase follows a layered architecture with clear separation of concerns:

LayerCountKey ModulesResponsibility
Other Modules3root, logtemplateGeneral purpose functionality
middleware10proxy, cacheSupporting application functionality
auth1sessionSupporting application functionality
plugin1retrySupporting application functionality

Codebase Health

Overall Health: 🟢 85/100

MetricValueStatus
Internal imports3523 edges✅ Connected
External Packages23✅ Manageable
Circular Dependenciescycle-free✅ None
Orphan Files23⚠️ 23 unused
Key Insights
  • ✅ Clean module boundaries — No circular dependencies detected, enabling safe refactoring and testing.
  • ⚠️ Coupling hotspot — adapter.go is imported by 87 files (43% of codebase). Consider splitting.
  • ⚠️ Potential dead code — 23 files (11%) are not imported anywhere.

Key Data Flows

The system processes information through 6 identified flows:

  • csrf.go Request Flow (critical) — Import chain starting from middleware/csrf/csrf.go — traces how this entry point depends on 1 downstream module
  • keyauth.go Request Flow (critical) — Import chain starting from middleware/keyauth/keyauth.go — traces how this entry point depends on 1 downstream module
  • basicauth.go Request Flow (critical) — Import chain starting from middleware/basicauth/basicauth.go — traces how this entry point depends on 1 downstream module
  • config.go Request Flow (critical) — Import chain starting from middleware/csrf/config.go — traces how this entry point depends on 1 downstream module
  • session_manager.go Request Flow (critical) — Import chain starting from middleware/csrf/session_manager.go — traces how this entry point depends on 1 downstream module

Strategic Observations

  • The codebase follows Core/kernel architecture — `client/core.go`, Middleware pipeline — `middleware/proxy`, `middleware/cache`, `middleware/logger` (+29 more), Acyclic dependency graph — clean layering architectural patterns, providing a familiar structure for developers.
  • With 10 distinct domains, the system has clear separation of concerns suitable for team-based development.
  • As a CLI tool, this system is automation-friendly and can integrate into existing workflows and pipelines.

This executive summary was generated from comprehensive repository analysis including dependency graphs, data flow detection, and architectural pattern recognition. Enable AI enhancement with `GITHUB_TOKEN` for strategic recommendations, risk assessments, and plain-language explanations tailored for non-technical stakeholders.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

System Overview

Mixed audience · Concise technical overview readable by all

The Big Picture

Fiber is a large codebase with multiple interconnected subsystems, containing 87 modules spread across 202 files.

DimensionDetails
Total Files202
Module Count87
Functional Domains10
Interface TypeCommand-Line Tool

Technology Stack

The system is built on a modern technology foundation:

LayerTechnologiesPurpose
RuntimeFiberApplication runtime
LanguageGoPrimary development language

Architecture Patterns

The codebase follows 3 identified architectural patterns:

  • Core/kernel architecture — `client/core.go` — The system operates as a command-line interface, accepting user input through terminal commands and producing structured output.
  • Middleware pipeline — `middleware/proxy`, `middleware/cache`, `middleware/logger` (+29 more) — A structured approach to organizing code and managing complexity.
  • Acyclic dependency graph — clean layering — The system operates as a command-line interface, accepting user input through terminal commands and producing structured output.

Module Architecture

The system is organized into 4 architectural layers:

LayerModulesKey ExamplesResponsibility
Other Modules3root, logtemplateGeneral purpose functionality
middleware10proxy, cacheSupporting application functionality
auth1sessionSupporting application functionality
plugin1retrySupporting application functionality
Layer Details

Other Modules — 3 modules

  • root — 37 files — Core application module
  • internal/logtemplate — 3 files — Core application module
  • internal/storage — 2 files — Core application module

middleware — 10 modules

  • middleware/proxy — 12 files — Request/response middleware
  • middleware/cache — 10 files — Request/response middleware
  • middleware/logger — 10 files — Request/response middleware
  • middleware/csrf — 7 files — Request/response middleware
  • +6 more modules

auth — 1 module

  • middleware/session — 6 files — Request/response middleware

plugin — 1 module

  • addon/retry — 2 files — Core application module

Functional Domains

The following domains represent the largest functional areas by file count:

RankDomainScaleBusiness Capability
1API Layer101 filespath middleware/proxy matches middleware
2Other81 filesUncategorized module
3Authentication & Identity6 filespath middleware/session matches session
4Services6 filespath client/client.go matches client
5Plugin System2 filespath addon/retry matches addon
6State Management2 filespath internal/contextvalue matches context
—+4 more—Additional domains

Dependency Graph

Codebase Health: 🟢 85/100

MetricValueAssessment
Internal Imports3523Modules are connected
External Packages23Lean dependencies
Circular Dependencies0✅ Clean
Orphan Files23⚠️ 23 unused

Hub modules (most imported):

  • adapter.go — imported by 87 files
  • app.go — imported by 87 files
  • appconfig.go — imported by 87 files
  • bind.go — imported by 87 files
  • color.go — imported by 87 files

This system overview was generated from comprehensive repository analysis. Enable AI enhancement with `GITHUB_TOKEN` for narrative context, architectural rationale, technology trade-off analysis, and scalability recommendations.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Business Domains

Mixed audience · Codebase structure translated into business language

Overview

Fiber is organized into 10 functional domains, each representing a distinct area of business capability. This document maps the technical structure to business-oriented functional areas.

Quick Reference:

DomainModulesFilesPrimary Capability
API Layer31101External API interface layer
Other4281Supporting business operations
Authentication & Identity16User identity verification and access control
Services66Supporting business operations
Plugin System12Extensibility and plugin architecture
State Management22Application state and data flow management
UI Components11Reusable visual interface elements
Search & Discovery11Search and content discovery
Core Engine11Supporting business operations
Delivery11Supporting business operations

1. API Layer

Business Capability

path middleware/proxy matches middleware

This is a major domain with 31 modules and 101 source files.

Key Modules
ModulePurpose
middleware/proxyRequest/response middleware
middleware/cacheRequest/response middleware
middleware/loggerRequest/response middleware
middleware/csrfRequest/response middleware
middleware/limiterRequest/response middleware
Business Impact
  • Change Frequency Impact: High — Changes here affect 101 files
  • Domain Complexity: Complex (multiple modules)
  • Recommendation: Ensure comprehensive testing before modifying this domain

2. Other

Business Capability

Uncategorized module

This is a major domain with 42 modules and 81 source files.

Key Modules
ModulePurpose
rootCore application module
internal/logtemplateCore application module
internal/storageCore application module
binder/binder.goCore application module
binder/cbor.goCore application module
Business Impact
  • Change Frequency Impact: High — Changes here affect 81 files
  • Domain Complexity: Complex (multiple modules)
  • Recommendation: Ensure comprehensive testing before modifying this domain

3. Authentication & Identity

Business Capability

path middleware/session matches session

This is a focused domain with 1 module and 6 source files.

Key Modules
ModulePurpose
middleware/sessionRequest/response middleware
Business Impact
  • Change Frequency Impact: Low — Changes here affect 6 files
  • Domain Complexity: Simple

4. Services

Business Capability

path client/client.go matches client

This is a focused domain with 6 modules and 6 source files.

Key Modules
ModulePurpose
client/client.goCore application module
client/cookiejar.goCore application module
client/errors.goCore application module
client/hooks.goCustom hooks and shared state logic
client/request.goCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 6 files
  • Domain Complexity: Complex (multiple modules)

5. Plugin System

Business Capability

path addon/retry matches addon

This is a focused domain with 1 module and 2 source files.

Key Modules
ModulePurpose
addon/retryCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 2 files
  • Domain Complexity: Simple

6. State Management

Business Capability

path internal/contextvalue matches context

This is a focused domain with 2 modules and 2 source files.

Key Modules
ModulePurpose
internal/contextvalueCore application module
log/context.goCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 2 files
  • Domain Complexity: Simple

7. UI Components

Business Capability

path binder/form.go matches form

This is a focused domain with 1 module and 1 source file.

Key Modules
ModulePurpose
binder/form.goCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 1 file
  • Domain Complexity: Simple

8. Search & Discovery

Business Capability

path binder/query.go matches query

This is a focused domain with 1 module and 1 source file.

Key Modules
ModulePurpose
binder/query.goCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 1 file
  • Domain Complexity: Simple

9. Core Engine

Business Capability

path client/core.go matches core

This is a focused domain with 1 module and 1 source file.

Key Modules
ModulePurpose
client/core.goCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 1 file
  • Domain Complexity: Simple

10. Delivery

Business Capability

path client/transport.go matches transport

This is a focused domain with 1 module and 1 source file.

Key Modules
ModulePurpose
client/transport.goCore application module
Business Impact
  • Change Frequency Impact: Low — Changes here affect 1 file
  • Domain Complexity: Simple

Cross-Domain Dependencies

The following modules serve as shared infrastructure across multiple domains:

ModuleConsumersRole
adapter.go87 modulesCore application module
app.go87 modulesCore application module
appconfig.go87 modulesConfiguration management
bind.go87 modulesCore application module
color.go87 modulesCore application module
constants.go87 modulesCore application module
Cross-Domain Integration Points

These modules facilitate communication and data sharing between domains:

  • `adapter.go` serves as a central integration point, imported by 87 different modules. Changes to this module have wide-ranging impact and should be carefully coordinated.
  • `app.go` serves as a central integration point, imported by 87 different modules. Changes to this module have wide-ranging impact and should be carefully coordinated.
  • `appconfig.go` serves as a central integration point, imported by 87 different modules. Changes to this module have wide-ranging impact and should be carefully coordinated.

Domain Health Summary

MetricValueAssessment
Total Domains10Well-balanced
Avg Files/Domain20Appropriate size
Largest DomainAPI Layer (101 files)Reasonable
Domain Concentration50% in largest✅ Well distributed

Domain mapping is based on directory naming conventions and code organization patterns. Enable AI enhancement with `GITHUB_TOKEN` for business-language descriptions, stakeholder impact analysis, strategic recommendations, and cross-domain relationship narratives.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Architecture Overview

Engineers · Layered architecture and design patterns

Architectural Philosophy

Fiber follows a Core/kernel architecture — `client/core.go` architecture with elements of Middleware pipeline — `middleware/proxy`, `middleware/cache`, `middleware/logger` (+29 more), Acyclic dependency graph — clean layering.

Pattern Analysis

Core/kernel architecture — `client/core.go`

The system operates as a command-line interface, accepting user input through terminal commands and producing structured output.

Benefits: Automation-friendly, scriptable, integrates with CI/CD pipelines

Middleware pipeline — `middleware/proxy`, `middleware/cache`, `middleware/logger` (+29 more)

A structured approach to organizing code and managing complexity.

Benefits: Structured organization, maintainability, clarity

Acyclic dependency graph — clean layering

The system operates as a command-line interface, accepting user input through terminal commands and producing structured output.

Benefits: Automation-friendly, scriptable, integrates with CI/CD pipelines

System Layers

The system is organized into 10 functional layers, each encapsulating a distinct area of responsibility:

LayerResponsibilityScaleKey Insight
API Layerpath middleware/proxy matches middleware101 filesLarge domain — consider breaking down
OtherUncategorized module81 filesStandard domain
Authentication & Identitypath middleware/session matches session6 filesSecurity-critical — extra review needed
Servicespath `client/client6 filesStandard domain
Plugin Systempath addon/retry matches addon2 filesStandard domain
State Managementpath internal/contextvalue matches context2 filesStandard domain
UI Componentspath `binder/form1 filesStandard domain
Search & Discoverypath `binder/query1 filesStandard domain
+2 moreAdditional layers——

Module Layers

Modules are classified into 4 architectural roles:

Other Modules

Role: General purpose functionality

ModuleFilesDescription
root37Core application module
internal/logtemplate3Core application module
internal/storage2Core application module
middleware

Role: Supporting application functionality

ModuleFilesDescription
middleware/proxy12Request/response middleware
middleware/cache10Request/response middleware
middleware/logger10Request/response middleware
middleware/csrf7Request/response middleware
middleware/limiter6Request/response middleware
+5 more—Additional modules
auth

Role: Supporting application functionality

ModuleFilesDescription
middleware/session6Request/response middleware
plugin

Role: Supporting application functionality

ModuleFilesDescription
addon/retry2Core application module

Technology Foundation

LayerTechnologiesArchitectural Implication
ApplicationFiberStandard application patterns
LanguageGoFast compilation, strong concurrency support

Scale & Complexity Analysis

DimensionValueAssessment
Total Files202large project
Module Count87medium-high complexity
Domain Spread10 domainsGood separation
InterfaceCLITerminal-driven interaction

Dependency Health

Architecture Health Score: 🟢 85/100

MetricValueStatusRecommendation
Import Edges3523✅Healthy module connectivity
External Packages23✅Lean dependency set
Circular Deps0✅Clean module boundaries
Orphan Files23⚠️Review for dead code
Architectural Strengths
  • Clean module boundaries — No circular dependencies detected. This enables safe refactoring, isolated testing, and clear ownership boundaries.
Concerns
  • Central coupling hotspot — adapter.go is imported by 87 files (43%). Consider breaking into smaller modules. Priority: Medium.

Hub modules (most imported):

  • adapter.go — imported by 87 files
  • app.go — imported by 87 files
  • appconfig.go — imported by 87 files
  • bind.go — imported by 87 files
  • color.go — imported by 87 files

This architecture overview was generated from comprehensive dependency graph analysis and pattern detection. Enable AI enhancement with `GITHUB_TOKEN` for architectural narratives, design rationale explanations, scalability analysis, and refactoring recommendations.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Module Catalog

Engineers · Complete inventory of code modules with AI explanations

A complete inventory of all code modules in the repository, organized by location and size. Each module represents a distinct area of responsibility within the codebase.

Total modules: 87


Module Inventory

ModuleFilesRoleOwners
root37Application module—
middleware/proxy12Request middleware and interceptors · Orchestrator (coordinates 233 modules)@gofiber/maintainers
middleware/cache10Request middleware and interceptors · Orchestrator (coordinates 243 modules)@gofiber/maintainers
middleware/logger10Request middleware and interceptors · Critical shared infrastructure (imported by 50 modules)@gofiber/maintainers
middleware/csrf7Request middleware and interceptors · Orchestrator (coordinates 223 modules)@gofiber/maintainers
middleware/limiter6Request middleware and interceptors · Orchestrator (coordinates 187 modules)@gofiber/maintainers
middleware/session6Request middleware and interceptors · Orchestrator (coordinates 176 modules)@gofiber/maintainers
middleware/idempotency5Request middleware and interceptors · Orchestrator (coordinates 81 modules)@gofiber/maintainers
internal/logtemplate3Application module · Critical shared infrastructure (imported by 21 modules)@gofiber/maintainers
middleware/encryptcookie3Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/paginate3Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/sse3Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
addon/retry2Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/storage2Application module · Leaf module (consumed only, 4 importers)@gofiber/maintainers
middleware/basicauth2Request middleware and interceptors · Orchestrator (coordinates 86 modules)@gofiber/maintainers
middleware/compress2Request middleware and interceptors · Orchestrator (coordinates 77 modules)@gofiber/maintainers
middleware/cors2Request middleware and interceptors · Orchestrator (coordinates 80 modules)@gofiber/maintainers
middleware/earlydata2Request middleware and interceptors · Orchestrator (coordinates 75 modules)@gofiber/maintainers
middleware/envvar2Request middleware and interceptors · Orchestrator (coordinates 37 modules)@gofiber/maintainers
middleware/etag2Request middleware and interceptors · Orchestrator (coordinates 79 modules)@gofiber/maintainers
middleware/expvar2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/favicon2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/healthcheck2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/helmet2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/hostauthorization2Request middleware and interceptors · Orchestrator (coordinates 75 modules)@gofiber/maintainers
middleware/keyauth2Request middleware and interceptors · Orchestrator (coordinates 89 modules)@gofiber/maintainers
middleware/pprof2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/recover2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/redirect2Request middleware and interceptors · Orchestrator (coordinates 80 modules)@gofiber/maintainers
middleware/requestid2Request middleware and interceptors · Orchestrator (coordinates 84 modules)@gofiber/maintainers
middleware/responsetime2Request middleware and interceptors · Orchestrator (coordinates 74 modules)@gofiber/maintainers
middleware/rewrite2Request middleware and interceptors · Orchestrator (coordinates 76 modules)@gofiber/maintainers
middleware/static2Request middleware and interceptors · Orchestrator (coordinates 76 modules)@gofiber/maintainers
middleware/timeout2Request middleware and interceptors · Orchestrator (coordinates 78 modules)@gofiber/maintainers
binder/binder.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/cbor.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/cookie.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/form.go1Application module · Connector (3 in, 1 out)@gofiber/maintainers
binder/header.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/json.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/mapping.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/msgpack.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/query.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/resp_header.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/uri.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
binder/xml.go1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
client/client.go1Application module@gofiber/maintainers
client/cookiejar.go1Application module · Isolated (no imports or importers)@gofiber/maintainers
client/core.go1Core business logic and shared foundations · Orchestrator (coordinates 39 modules)@gofiber/maintainers
client/errors.go1Application module · Isolated (no imports or importers)@gofiber/maintainers
client/hooks.go1Hook callbacks@gofiber/maintainers
client/request.go1Application module · Orchestrator (coordinates 37 modules)@gofiber/maintainers
client/response.go1Application module · Isolated (no imports or importers)@gofiber/maintainers
client/transport.go1Application module@gofiber/maintainers
extractors/extractors.go1Application module · Orchestrator (coordinates 40 modules)@gofiber/maintainers
internal/appconfig1Application module · Leaf module (consumed only, 5 importers)@gofiber/maintainers
internal/byterange1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/clocktest1Application module · Isolated (no imports or importers)@gofiber/maintainers
internal/contextvalue1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/cookie1Application module · Leaf module (consumed only, 4 importers)@gofiber/maintainers
internal/crosshost1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/ctxlocal1Application module · Orchestrator (coordinates 37 modules)@gofiber/maintainers
internal/etag1Application module · Connector (3 in, 1 out)@gofiber/maintainers
internal/fieldname1Application module · Leaf module (consumed only, 10 importers)@gofiber/maintainers
internal/fspath1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/headerlist1Application module · Leaf module (consumed only, 12 importers)@gofiber/maintainers
internal/headerlookup1Application module · Orchestrator (coordinates 39 modules)@gofiber/maintainers
internal/idnafold1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/loggertest1Application module@gofiber/maintainers
internal/mediatype1Application module · Leaf module (consumed only, 6 importers)@gofiber/maintainers
internal/memory1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
internal/nilerror1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
internal/origin1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/paramdelim1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/quotedstring1Application module · Leaf module (consumed only, 4 importers)@gofiber/maintainers
internal/redact1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
internal/rulematch1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/schemehost1Application module · Leaf module (consumed only, 3 importers)@gofiber/maintainers
internal/tlstest1Application module · Isolated (no imports or importers)@gofiber/maintainers
internal/urlnorm1Application module · Leaf module (consumed only, 2 importers)@gofiber/maintainers
internal/wiretarget1Application module · Orchestrator (coordinates 38 modules)@gofiber/maintainers
log/context.go1Application module · Critical shared infrastructure (imported by 19 modules)@gofiber/maintainers
log/default.go1Application module · Critical shared infrastructure (imported by 19 modules)@gofiber/maintainers
log/fiberlog.go1Application module · Critical shared infrastructure (imported by 19 modules)@gofiber/maintainers
log/log.go1Application module · Critical shared infrastructure (imported by 19 modules)@gofiber/maintainers
middleware/adaptor1Request middleware and interceptors · Orchestrator (coordinates 39 modules)@gofiber/maintainers
middleware/skip1Request middleware and interceptors · Orchestrator (coordinates 37 modules)@gofiber/maintainers

Module detection is based on the `module_roots` setting in your RepoLens configuration. Adjust this setting to change how modules are grouped.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Route Map

Mixed audience · Application routes and API endpoints with context

A complete listing of user-facing pages and backend API endpoints. This map shows every URL a user or client can interact with, along with the source file that handles each route.


Route Detection

This project is a CLI tool — it does not expose HTTP routes or serve web pages. This is expected behavior, not a detection failure.

CLI tools interact through terminal commands rather than URLs. See the System Overview or Developer Onboarding documents for command documentation.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

API Surface

Engineers · Backend API endpoints with usage examples

This page documents both the API endpoints the application exposes and the external services it integrates with. Use it as a reference for understanding the system's interfaces.


Internal API Endpoints

These are the backend services the application provides to handle incoming requests.

No API routes were detected in this scan. If your project uses a routing framework (Express, Fastify, NestJS, etc.), ensure the relevant directories are included in your scan.include patterns.


External API Integrations

Third-party services the application connects to, grouped by category.

No external API integrations were detected. This section populates automatically when RepoLens identifies SDK imports or API client usage in your codebase.


HTTP method reference — GET: retrieve data, POST: create, PUT/PATCH: update, DELETE: remove.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Data Flows

Mixed audience · Major information flows through the system

Understanding Data Movement

Data flows describe how information moves through Fiber — from external inputs through processing layers to storage or presentation. Understanding these flows is essential for debugging, performance optimization, and architectural decisions.

Flow Summary

6 data flows identified in the codebase:

FlowTypeComplexityCritical
csrf.go Request FlowIntegrationLow (2 steps)🔴 Yes
keyauth.go Request FlowIntegrationLow (2 steps)🔴 Yes
basicauth.go Request FlowIntegrationLow (2 steps)🔴 Yes
config.go Request FlowIntegrationLow (2 steps)🔴 Yes
session_manager.go Request FlowIntegrationLow (2 steps)🔴 Yes
Authentication FlowIntegrationMedium (5 steps)🔴 Yes

1. csrf.go Request Flow 🔴 CRITICAL FLOW

Description

Import chain starting from middleware/csrf/csrf.go — traces how this entry point depends on 1 downstream module

Characteristics
PropertyValue
Steps2
Modules Involved2
CriticalityCritical
Processing Steps
StepActionPurpose
1csrf.go (entry point, imports 52 modules)Data acquisition
2adapter.go (shared infrastructure, used by 87 files)Processing step
Flow Diagram
┌─ START ─┐
│ `csrf.go` (entry point, imports 52 modules)        │
│         ↓
│ `adapter.go` (shared infrastructure, used by 87... │
└─ END ───┘
Involved Modules
ModuleRole
csrf.goRequest/response middleware
adapter.goCore application module
Insights
  • ⚠️ Critical path — Failures here have significant business impact
  • 📊 Consider adding monitoring and alerting
  • 🧪 Ensure comprehensive test coverage

2. keyauth.go Request Flow 🔴 CRITICAL FLOW

Description

Import chain starting from middleware/keyauth/keyauth.go — traces how this entry point depends on 1 downstream module

Characteristics
PropertyValue
Steps2
Modules Involved2
CriticalityCritical
Processing Steps
StepActionPurpose
1keyauth.go (entry point, imports 50 modules)Data acquisition
2adapter.go (shared infrastructure, used by 87 files)Processing step
Flow Diagram
┌─ START ─┐
│ `keyauth.go` (entry point, imports 50 modules)     │
│         ↓
│ `adapter.go` (shared infrastructure, used by 87... │
└─ END ───┘
Involved Modules
ModuleRole
keyauth.goAuthentication and authorization logic
adapter.goCore application module
Insights
  • ⚠️ Critical path — Failures here have significant business impact
  • 📊 Consider adding monitoring and alerting
  • 🧪 Ensure comprehensive test coverage

3. basicauth.go Request Flow 🔴 CRITICAL FLOW

Description

Import chain starting from middleware/basicauth/basicauth.go — traces how this entry point depends on 1 downstream module

Characteristics
PropertyValue
Steps2
Modules Involved2
CriticalityCritical
Processing Steps
StepActionPurpose
1basicauth.go (entry point, imports 48 modules)Data acquisition
2adapter.go (shared infrastructure, used by 87 files)Processing step
Flow Diagram
┌─ START ─┐
│ `basicauth.go` (entry point, imports 48 modules)   │
│         ↓
│ `adapter.go` (shared infrastructure, used by 87... │
└─ END ───┘
Involved Modules
ModuleRole
basicauth.goAuthentication and authorization logic
adapter.goCore application module
Insights
  • ⚠️ Critical path — Failures here have significant business impact
  • 📊 Consider adding monitoring and alerting
  • 🧪 Ensure comprehensive test coverage

4. config.go Request Flow 🔴 CRITICAL FLOW

Description

Import chain starting from middleware/csrf/config.go — traces how this entry point depends on 1 downstream module

Characteristics
PropertyValue
Steps2
Modules Involved2
CriticalityCritical
Processing Steps
StepActionPurpose
1config.go (entry point, imports 48 modules)Data acquisition
2adapter.go (shared infrastructure, used by 87 files)Processing step
Flow Diagram
┌─ START ─┐
│ `config.go` (entry point, imports 48 modules)      │
│         ↓
│ `adapter.go` (shared infrastructure, used by 87... │
└─ END ───┘
Involved Modules
ModuleRole
config.goConfiguration management
adapter.goCore application module
Insights
  • ⚠️ Critical path — Failures here have significant business impact
  • 📊 Consider adding monitoring and alerting
  • 🧪 Ensure comprehensive test coverage

5. session_manager.go Request Flow 🔴 CRITICAL FLOW

Description

Import chain starting from middleware/csrf/session_manager.go — traces how this entry point depends on 1 downstream module

Characteristics
PropertyValue
Steps2
Modules Involved2
CriticalityCritical
Processing Steps
StepActionPurpose
1session_manager.go (entry point, imports 47 modules)Data acquisition
2adapter.go (shared infrastructure, used by 87 files)Processing step
Flow Diagram
┌─ START ─┐
│ `session_manager.go` (entry point, imports 47 m... │
│         ↓
│ `adapter.go` (shared infrastructure, used by 87... │
└─ END ───┘
Involved Modules
ModuleRole
session_manager.goRequest/response middleware
adapter.goCore application module
Insights
  • ⚠️ Critical path — Failures here have significant business impact
  • 📊 Consider adding monitoring and alerting
  • 🧪 Ensure comprehensive test coverage

6. Authentication Flow 🔴 CRITICAL FLOW

Description

User authentication and session management

Characteristics
PropertyValue
Steps5
Modules Involved4
CriticalityCritical
Processing Steps
StepActionPurpose
1User submits login credentialsSecurity check
2Auth API validates credentialsInput validation
3Session is created and storedData persistence
4User is redirected to authenticated areaSecurity check
5Subsequent requests include auth tokenSecurity check
Flow Diagram
┌─ START ─┐
│ User submits login credentials                     │
│         ↓
│ Auth API validates credentials                     │
│         ↓
│ Session is created and stored                      │
│         ↓
│ User is redirected to authenticated area           │
│         ↓
│ Subsequent requests include auth token             │
└─ END ───┘
Involved Modules
ModuleRole
sessionRequest/response middleware
basicauthAuthentication and authorization logic
hostauthorizationAuthentication and authorization logic
keyauthAuthentication and authorization logic
Dependencies

External services: Authentication service

Insights
  • ⚠️ Critical path — Failures here have significant business impact
  • 📊 Consider adding monitoring and alerting
  • 🧪 Ensure comprehensive test coverage

Import Network

The system has 3523 internal import edges connecting 202 source files.

Network Topology
MetricValueMeaning
Total Edges3523Direct import relationships
Hub Count10Central integration points
Avg Connections~17.4 per fileCoupling density
Key Integration Points

These modules aggregate data from multiple sources:

HubInboundRole
adapter.go87 filesCore application module
app.go87 filesCore application module
appconfig.go87 filesConfiguration management
bind.go87 filesCore application module
color.go87 filesCore application module

Flow detection uses naming conventions, import patterns, and dependency graph analysis. Enable AI enhancement with `GITHUB_TOKEN` for end-to-end flow narratives, failure mode analysis, data transformation descriptions, and performance bottleneck identification.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Architecture Diff

Mixed audience · Git diff analysis and impact assessment

No changes detected.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

System Map

Mixed audience · Visual dependency graph with explanation

What is this? This visual diagram shows how different parts of your codebase connect to each other. Arrows indicate dependencies (which modules use which).

Showing: 30 modules and 10 relationships

Source: Real import analysis


Architecture Diagram

┌─────────────────────────────────────────────────────────────┐
│              🏗️  SYSTEM ARCHITECTURE MAP                    │
└─────────────────────────────────────────────────────────────┘

📋  RENDERING
│
└── logtemplate (3 files)
│
🔀  MIDDLEWARE
│
├── proxy (12 files)
├── cache (10 files)
├── logger (10 files)
│      → logtemplate
├── csrf (7 files)
│      → session
│      → logger
├── limiter (6 files)
├── session (6 files)
│      → logger
│      → storage
├── idempotency (5 files)
│      → storage
├── encryptcookie (3 files)
├── paginate (3 files)
├── sse (3 files)
├── basicauth (2 files)
│      → logger
├── compress (2 files)
│      → etag
├── cors (2 files)
├── earlydata (2 files)
├── envvar (2 files)
├── etag (2 files)
├── expvar (2 files)
├── favicon (2 files)
├── healthcheck (2 files)
├── helmet (2 files)
├── hostauthorization (2 files)
├── keyauth (2 files)
│      → logger
├── pprof (2 files)
├── recover (2 files)
├── redirect (2 files)
└── requestid (2 files)
       → logger
│
📦  OTHER
│
├── root (37 files)
├── retry (2 files)
└── storage (2 files)
│

Legend:
  →  imports / depends on
  ╌→ tests

Key Connections

Most depended-on modules (highest import count):

ModuleImported by
middleware/logger50 modules
internal/logtemplate18 modules
middleware/session12 modules
internal/storage4 modules
middleware/etag2 modules

Most dependent modules (highest dependency count):

ModuleDepends on
middleware/csrf22 modules
middleware/logger18 modules
middleware/session12 modules
middleware/basicauth10 modules
middleware/keyauth10 modules

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Developer Onboarding

Engineers · Quick start guide for new developers

Welcome to Fiber! 👋

This guide will help you get up to speed quickly. Fiber is a Fiber project built with Go, containing 87 modules across 202 files.

What You'll Learn
  1. ✅ Repository structure and organization
  2. ✅ Technology stack and tools
  3. ✅ Key modules to understand first
  4. ✅ How data flows through the system
  5. ✅ How to start contributing

Quick Reference Card

AspectDetails
LanguagesGo
FrameworksFiber
Build ToolsStandard toolchain
Size87 modules, 202 files
Domains10 functional areas
TypeCommand-line interface

Repository Structure

Understanding the directory layout is your first step to navigating the codebase:

DirectoryPurposeStart Here?
middlewareMiddleware pipeline—
internalProject files—
binderProject files—
clientProject files—
logProject files—
extractorsProject files—
addonProject files—
Where to Begin

Start by exploring the main src/ directory or look for entry point files like index.js, main.js, or app.js.


Technology Stack

LayerTechnologiesWhat to Learn
FrameworkFiberReview the framework documentation
LanguageGoReview language idioms used in the codebase

Core Modules to Understand

These are the most important modules by size and centrality. Understanding them will unlock the rest of the codebase:

PriorityModuleFilesTypeWhy It Matters
⭐ Highroot37Other ModulesLarge module — core functionality
⭐ Highmiddleware/proxy12middlewareKey system component
⭐ Highmiddleware/cache10middlewareKey system component
Mediummiddleware/logger10middlewareKey system component
Mediummiddleware/csrf7middlewareKey system component
Mediummiddleware/limiter6middlewareKey system component
Lowmiddleware/session6authKey system component
Lowmiddleware/idempotency5middlewareKey system component
Lowinternal/logtemplate3Other ModulesKey system component
Lowmiddleware/encryptcookie3middlewareKey system component
Key Integration Points

These modules are imported by many other files. Changes here have wide impact:

  • `adapter.go` — Used by 87 files — Core application module
  • `app.go` — Used by 87 files — Core application module
  • `appconfig.go` — Used by 87 files — Configuration management
  • `bind.go` — Used by 87 files — Core application module
  • `color.go` — Used by 87 files — Core application module

⚠️ Caution: Be extra careful when modifying these files. Consider the ripple effects.


How Data Flows

Understanding these flows helps you see how the system processes information end-to-end:

FlowDescriptionKey Modules
csrf.go Request FlowImport chain starting from middleware/csrf/csrf.go — trace...csrf.go, adapter.go
keyauth.go Request FlowImport chain starting from middleware/keyauth/keyauth.go —...keyauth.go, adapter.go
basicauth.go Request FlowImport chain starting from `middleware/basicauth/basicauth.g...basicauth.go, adapter.go
config.go Request FlowImport chain starting from middleware/csrf/config.go — tra...config.go, adapter.go
session_manager.go Request FlowImport chain starting from `middleware/csrf/session_manager....session_manager.go, adapter.go

Debugging tip: When investigating issues, trace the data flow from input to output to identify where problems occur.


Getting Started Checklist

Follow these steps to set up your development environment:

1. Clone and Install
git clone <repository-url>
cd fiber
npm install  # or yarn, pnpm
2. Explore the Structure
  • Review the directory structure above
  • Open the README.md for project-specific instructions
  • Look for CONTRIBUTING.md for contribution guidelines
3. Understand Core Modules

Start with the high-priority modules listed above. Read the code and comments to understand:

  • What problem each module solves
  • How modules interact with each other
  • What data structures are used
4. Make Your First Change

Start small:

  1. Find a small bug or typo to fix
  2. Make the change in a feature branch
  3. Run tests to ensure nothing breaks
  4. Submit a pull request for review

Common Pitfalls

New contributors often run into these issues:

  • High-impact modules — adapter.go is used by 43% of the codebase. Changes here need thorough testing.
  • Environment setup — Check for .env.example files and ensure you have all required environment variables.
  • Branch naming — Follow the team's branch naming conventions (usually feature/, fix/, docs/).

Additional Resources

ResourcePurpose
README.mdProject overview and quick start
CONTRIBUTING.mdContribution guidelines (if exists)
CHANGELOG.mdRecent changes and release history
package.jsonAvailable scripts and dependencies

This onboarding guide was generated from comprehensive repository analysis. Enable AI enhancement with `GITHUB_TOKEN` for narrative walkthroughs, common pitfall documentation, debugging tips, architecture deep-dives, and personalized contribution recommendations.

Welcome to the team! Happy coding! 🚀

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

GraphQL Schema

Engineers · GraphQL types, queries, mutations, and resolver map

No GraphQL schema was detected in this repository.

RepoLens scans for .graphql and .gql schema files, inline SDL via tagged template literals (e.g. gql\...\``), resolver patterns, and popular GraphQL libraries including Apollo, Yoga, Nexus, Pothos, Mercurius, type-graphql, Relay, and urql.

If your project uses GraphQL, ensure the relevant source directories are included in your scan.include configuration.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

TypeScript Type Graph

Engineers · TypeScript interfaces, types, classes, and relationships

No TypeScript type declarations were detected in this repository.

RepoLens analyzes .ts and .tsx files for interface declarations, type aliases, classes, and enums. Ensure your TypeScript source directories are included in the scan.include configuration.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Dependency Graph

Engineers · Module dependency analysis with cycle detection

202 files · 3523 imports · 23 external packages · ✓ no circular dependencies · 23 orphan file(s)

This document maps every import relationship in the codebase, identifies the most-connected modules, and flags circular dependencies that may complicate refactoring or increase build times.

Overview

MetricValue
Source files202
Import edges3523
External packages23
Circular dependencies0
Orphan files (no imports or importers)23

Hub Modules

These are the most-imported modules in the codebase. Changes to hub modules have the widest blast radius and should be reviewed carefully:

ModuleImported By
adapter.go87 files
app.go87 files
appconfig.go87 files
bind.go87 files
color.go87 files
constants.go87 files
constraint.go87 files
ctx.go87 files
ctx_interface.go87 files
ctx_interface_gen.go87 files

External Dependencies

The codebase imports 23 external packages. These are third-party modules (not the language standard library):

Package
---------
github.com/fxamacker/cbor/v2
github.com/gofiber/schema
github.com/gofiber/utils/v2
github.com/gofiber/utils/v2/bytes
github.com/gofiber/utils/v2/strings
github.com/gofiber/utils/v2/swar
github.com/google/uuid
github.com/mattn/go-colorable
github.com/mattn/go-isatty
github.com/tinylib/msgp/msgp
github.com/valyala/bytebufferpool
github.com/valyala/fasthttp
github.com/valyala/fasthttp/expvarhandler
github.com/valyala/fasthttp/fasthttpadaptor
github.com/valyala/fasthttp/fasthttpproxy
github.com/valyala/fasthttp/prefork
golang.org/x/crypto/acme/autocert
golang.org/x/crypto/bcrypt
golang.org/x/net/http/httpguts
golang.org/x/net/http/httpproxy
golang.org/x/net/idna
golang.org/x/net/publicsuffix
golang.org/x/text/unicode/norm

Generated by RepoLens import analysis. Dependency detection covers JavaScript and TypeScript (ES modules, dynamic import, CommonJS, re-exports; comments, strings, and type-only imports are skipped), Python (`import` / `from ... import`, including relative imports), and Go (`go.mod` module paths). Go `_test.go` files are not part of the graph.*

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Architecture Drift

Mixed audience · Structural changes compared to baseline snapshot

No baseline found. Run repolens publish once to establish a baseline.

A baseline snapshot of the current architecture has been saved. On subsequent runs, this report will track structural changes across the following dimensions:

DimensionWhat is Tracked
ModulesNew, removed, or significantly resized modules
API EndpointsAdded or removed backend routes
DependenciesChanges to external package imports
FrameworksTechnology stack additions or removals
Circular DependenciesIncreases in dependency cycles
GraphQL SchemaType additions or removals
Codebase ScaleOverall file count changes

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Security Hotspots

Engineers · Security anti-pattern detection with CWE classification

No security anti-patterns were detected in the scanned source files.

RepoLens scans JavaScript and TypeScript source files for common security risks including code injection (eval), XSS (innerHTML), SQL injection, command injection, prototype pollution, hardcoded credentials, and insecure randomness.

Test files, configs, and build outputs are excluded from analysis to reduce false positives.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples

Code Health Report

Mixed audience · Per-module health scores from complexity, coupling, docs, and security

202 files analyzed · Average health: 79/100 · 123 A, 27 B, 40 C, 12 D, 0 F

This report synthesizes complexity, coupling, documentation, and security signals into a single health score per module. Lower scores indicate higher risk and maintenance burden.

Overview

MetricValue
Files analyzed202
Average health score79/100
Average complexity32
Hotspots (score < 60)20

Grade Distribution

GradeCountMeaning
🟢 A (80–100)123Healthy — low complexity, well-documented
🔵 B (60–79)27Acceptable — minor improvements possible
🟡 C (40–59)40Needs attention — elevated complexity or coupling
🟠 D (20–39)12At risk — multiple quality signals degraded
🔴 F (0–19)0Critical — immediate refactoring recommended

Hotspots — Priority Refactoring Targets

These modules have the lowest health scores and should be prioritized for improvement:

ModuleScoreGradeComplexityCouplingDoc%Security
app.go30🟠 D17587↓ 17↑——
bind.go30🟠 D7587↓ 13↑——
extractors/extractors.go30🟠 D787↓ 40↑——
helpers.go30🟠 D21287↓ 20↑——
internal/wiretarget/wiretarget.go30🟠 D773↓ 38↑——
listen.go30🟠 D10787↓ 4↑——
redirect.go30🟠 D7287↓ 2↑——
req.go30🟠 D25787↓ 4↑——
res.go30🟠 D24087↓ 6↑——
path.go32🟠 D32087↓ 1↑——
router.go32🟠 D26687↓ 1↑——
middleware/logger/default_logger.go38🟠 D355↓ 40↑——
middleware/session/session.go41🟡 C502↓ 39↑——
middleware/session/store.go42🟡 C332↓ 45↑——
adapter.go45🟡 C5487↓ 0↑——
client/client.go45🟡 C410↓ 4↑——
client/cookiejar.go45🟡 C1200↓ 0↑——
client/core.go45🟡 C420↓ 39↑——
client/hooks.go45🟡 C1110↓ 1↑——
client/request.go45🟡 C710↓ 37↑——

Most Complex Functions

These functions have the highest cyclomatic complexity and are the most likely sources of bugs:

FunctionFileLineComplexity
New()middleware/cache/cache.go194264
UnmarshalMsg()middleware/cache/manager_msgp.go68587
DecodeMsg()middleware/cache/manager_msgp.go17671
EncodeMsg()middleware/cache/manager_msgp.go39344
New()middleware/cors/cors.go8941
New()middleware/static/static.go12038
SendFile()res.go124438
getOffer()helpers.go65536
next()router.go64636
nextCustom()router.go82136
IsMethodIdempotent()helpers.go119035
isJSONPMemberExpression()res.go86932
analyseParameterPart()path.go103431
matchBacktrack()path.go126431
adaptExpressHandler()adapter.go5229

All Modules by Health Score

Showing 50 of 202 modules (sorted worst-first)

ModuleScoreGradeLinesComplexityFan-InFan-Out
app.go30🟠 D19121758717
bind.go30🟠 D583758713
extractors/extractors.go30🟠 D95578740
helpers.go30🟠 D13862128720
internal/wiretarget/wiretarget.go30🟠 D33477338
listen.go30🟠 D879107874
redirect.go30🟠 D59072872
req.go30🟠 D1826257874
res.go30🟠 D1714240876
path.go32🟠 D1548320871
router.go32🟠 D1638266871
middleware/logger/default_logger.go38🟠 D33735540
middleware/session/session.go41🟡 C70750239
middleware/session/store.go42🟡 C39233245
adapter.go45🟡 C28254870
client/client.go45🟡 C11154104
client/cookiejar.go45🟡 C89412000
client/core.go45🟡 C35542039
client/hooks.go45🟡 C67311101
client/request.go45🟡 C113971037
ctx.go45🟡 C1152111870
domain.go45🟡 C90291870
hooks.go45🟡 C49042874
internal/mediatype/mediatype.go45🟡 C2065160
middleware/adaptor/adaptor.go45🟡 C1026133039
middleware/basicauth/basicauth.go45🟡 C24743048
middleware/cache/cache.go45🟡 C1424267043
middleware/cache/cachecontrol.go45🟡 C2196002
middleware/cache/manager_msgp.go45🟡 C101523400
middleware/cors/cors.go45🟡 C33454043
middleware/csrf/csrf.go45🟡 C47252052
middleware/hostauthorization/hostauthorization.go45🟡 C29065038
middleware/idempotency/response_msgp.go45🟡 C2835700
middleware/proxy/blockedip.go45🟡 C1815300
middleware/proxy/upstream.go45🟡 C2776900
middleware/static/static.go45🟡 C36461039
router_skip.go45🟡 C27956870
binder/mapping.go46🟡 C83414030
client/transport.go46🟡 C6616401
internal/fspath/fspath.go46🟡 C2125720
middleware/cache/keygen.go46🟡 C38244038
mount.go46🟡 C87191870
middleware/basicauth/config.go47🟡 C33037038
middleware/compress/compress.go48🟡 C21241040
middleware/redirect/redirect.go48🟡 C45277043
redirect_msgp.go48🟡 C30253870
router_filter.go50🟡 C30440870
internal/fieldname/fieldname.go52🟡 C31549100
internal/headerlist/headerlist.go54🟡 C33255120
middleware/cache/credential.go56🟡 C59293044

Scoring Methodology

The health score (0–100) is computed from four dimensions:

FactorWeightHow It's Measured
Complexity–1/pt above 10, –2/pt above 30Cyclomatic complexity for JavaScript/TypeScript, Python, and Go (regex, not AST)
Function complexity–2/pt above 8 per functionHighest complexity function in the file
Coupling–1/5 units above 20Fan-in × Fan-out (import connections)
Documentation–10 if <50%, –5 if <80%JSDoc/TSDoc coverage of exports
Security–10/high, –5/medium findingSecurity anti-pattern findings in file

Generated by RepoLens code health analysis. Complexity covers JavaScript/TypeScript, Python, and Go. It is regex-based and may differ from AST-based tools. Scores are relative indicators, not absolute quality measures.

<!-- repolens:docs-badge --> ![Docs by RepoLens](https://github.com/CHAPIBUNNY/repolens) · Examples