Codebase Analysis Utils
Overview
eic-codebase-analysis is a Python library designed to assist in the analysis of code repositories and large codebases. It leverages advanced analysis techniques and AI to provide deep insights into project structure, components, functionality, and documentation.
Installation
pip install eic-codebase-analysis
Tools
This library provides a set of modular tools for different analysis tasks:
1. Repository Structure Extractor
- Purpose: Extracts the directory and file structure of repositories without including file contents.
- Output: Markdown tree structure.
- Usage:
python -m eic_codebase_analysis.repository_structure_extractor.main --root ./path/to/repo
- Documentation: Read more
2. Detailed Code Content Extractor
- Purpose: Generates a single Markdown document containing both the directory structure and the full contents of files (in code blocks). Ideal for RAG contexts.
- Output: Markdown with file contents.
- Usage:
python -m eic_codebase_analysis.detailed_code_content_extractor.main --root ./path/to/repo
- Documentation: Read more
3. Repository File Metadata Generator
- Purpose: Uses AI (Gemini) to generate descriptive metadata for each file. Can output as sidecar files, a single aggregate file, or per-folder summaries.
- Output: AI-generated summaries and documentation for files.
- Usage:
python -m eic_codebase_analysis.repository_file_metadata_generator.main --root ./path/to/repo --model gemini-1.5-pro
- Documentation: Read more
4. Hierarchical Project Metadata Generator
- Purpose: Generates AI metadata at three levels: File (sidecar), Folder (summary of contents), and Project (high-level overview).
- Output: Hierarchical Markdown documentation (
.ai-meta.md,.folder-ai-meta.md,project.ai-meta.md). - Usage:
python -m eic_codebase_analysis.hierarchical_project_metadata_generator.main --root ./path/to/repo --model gemini-1.5-pro
- Documentation: Read more
Integration
These tools are designed to be part of a broader ecosystem of AI-driven development tools. They can be integrated with existing libraries for Retrieval Augmented Generation (RAG) and dataset preparation.
Requirements
- Python 3.x
google-generativeai(for AI-powered tools)
Metadata
Release files for eic-codebase-analysis 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| eic_codebase_analysis-0.1.1.tar.gz | 33.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| eic_codebase_analysis-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 82.0 kB
Release files / eic_codebase_analysis-0.1.1.tar.gz
| Download URL | eic_codebase_analysis-0.1.1.tar.gz |
|---|---|
| Size | 33.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1231ac7cd9a4def3abc2d880f86a37dbecb7ed05e70efc4a085bb75dd5bf2d8c
|
|
BLAKE2b-256 checksum How to use checksums |
297c0cf7ac388e8cf9b66daea135205be42d60041b13ad0b2c3075c45d91d162
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / eic_codebase_analysis-0.1.1-py3-none-any.whl
| Download URL | eic_codebase_analysis-0.1.1-py3-none-any.whl |
|---|---|
| Size | 48.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4937e2a226217f8f53b76ea0fd34f08ea968ff5eb53c12dca02ec32d86e73f51
|
|
BLAKE2b-256 checksum How to use checksums |
d08f31d582d407cf8edc13c27d00ee5fb9ccf0671bdc8e57d2a8808e73a7fde1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Security for eic-codebase-analysis 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.