Skip to main content

Estimate developer onboarding time from repository structure

Project description

onboarding-complexity

PyPI version Python 3.8+ MIT License

Estimate developer onboarding time from repository structure. Analyzes language diversity, architecture complexity, documentation gaps, dependency count, and tribal knowledge concentration to predict time-to-productivity.

Installation

pip install onboarding-complexity

Quick Start

# Analyze a repository
onboarding-complexity analyze /path/to/repo

# Compare two repositories
onboarding-complexity compare /path/to/repo1 /path/to/repo2

# Output as JSON
onboarding-complexity analyze /path/to/repo --format json

# Adjust for experience level
onboarding-complexity analyze /path/to/repo --experience-level junior

Sample Output

๐Ÿ“Š Onboarding Complexity Analysis

Repository: my-project
Analysis Date: 2026-02-16

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
METRICS
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Language Diversity:        5.2/10 (3 languages)
Architecture Complexity:   6.8/10 (depth: 5, services: 2)
Documentation Gap:         4.1/10 (README: good)
Dependency Complexity:     7.2/10 (156 total dependencies)
Knowledge Concentration:   6.5/10 (bus factor: 3)
Codebase Size:            5.9/10 (1,250 files, 45K LOC)

Overall Score:            5.9/10 (Moderate)

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
ONBOARDING TIME ESTIMATE
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Mid-level Developer:       4-6 weeks
Junior Developer:          7-10 weeks
Senior Developer:          2-3 weeks

Recommendations:
  โ€ข Document architecture decisions in ARCHITECTURE.md
  โ€ข Increase inline code comments (current: 8%)
  โ€ข Create a CONTRIBUTING.md with setup instructions

How It Works

The onboarding-complexity analyzer examines six key dimensions of codebase complexity:

Language Diversity Score

Measures the variety of programming languages in the codebase. Multiple languages increase cognitive load for new developers.

  • Single language: 1-2/10
  • 2-3 languages: 4-6/10
  • 4+ languages: 8-10/10

Architecture Complexity

Evaluates directory depth, number of services/modules, and configuration complexity.

  • Simple flat structure: 1-2/10
  • Typical monolith: 4-6/10
  • Microservices/complex: 8-10/10

Documentation Gap

Analyzes README quality, API documentation, inline comments, and architecture documentation.

  • Excellent docs: 1-2/10
  • Some gaps: 4-6/10
  • Minimal docs: 8-10/10

Dependency Complexity

Counts total dependencies, internal/custom packages, and framework count.

  • <50 deps: 1-3/10
  • 50-200 deps: 4-6/10
  • 200+ deps: 7-10/10

Knowledge Concentration

Estimates "bus factor" - how many key contributors know critical systems.

  • Well distributed: 1-2/10
  • Some concentration: 4-6/10
  • Highly concentrated: 8-10/10

Codebase Size

Total files, lines of code, and growth rate impact onboarding time.

  • <10K LOC: 1-2/10
  • 10K-100K LOC: 4-6/10
  • 100K+ LOC: 8-10/10

Configuration

Create a .onboarding.yml in your repository root to customize analysis:

ignore_patterns:
  - node_modules
  - .git
  - vendor

documentation_paths:
  - README.md
  - docs/
  - ARCHITECTURE.md

language_weights:
  python: 1.0
  javascript: 1.0
  rust: 1.5
  go: 0.9

Attribution

Built by Glue โ€” AI codebase intelligence for product teams. For real-time onboarding assistance including natural language codebase Q&A and auto-generated feature documentation, check out Glue.

License

MIT License - See LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

onboarding_complexity-1.0.0.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

onboarding_complexity-1.0.0-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file onboarding_complexity-1.0.0.tar.gz.

File metadata

  • Download URL: onboarding_complexity-1.0.0.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for onboarding_complexity-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1f47e8b32293464e9d9d7023c462d1dc6dc802f8fc58a8a3fb2bfc8cb8748f0b
MD5 d5cdb3a1b63641e9cd7320f88a2898e7
BLAKE2b-256 bbc292d3ad04cac6f6bb5e6516a4b782ce4ad20d1f1ac0a9bfd68195d95ba6c1

See more details on using hashes here.

File details

Details for the file onboarding_complexity-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for onboarding_complexity-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f20dace2b7b3435a820a0cdd6e20b4e5e57b95249e5c90a06967c0af48315c62
MD5 e22ac0c087ee048ae364079158c7f6ad
BLAKE2b-256 fa215060f17627cd927b1d913b60fb1be016c5662159c3ea6b20b34863905c9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page