Skip to main content

Analyzes python codebases and generates documentation with dependency graphs

Project description

MapMyCode

An AI-powered system that analyzes codebases and automatically generates architecture diagrams and documentation using LLM-driven code understanding.

Motivation

We have all been in a situation where after writing and testing the codebase, we are eventually tasked to create architecture diagrams or documentation for the code. It is a good practice to have proper documentation and architecture diagrams but creating them can be a hassle especially when we are starting from scratch.

That led us to create Mapmycode. The idea is simple, once you have created and tested the code, run mapmycode on the code directory.

The objective is to have a ready to use code documentation and architecture diagram which can be modified easily by the user if required instead of writing everything from scratch.

Usage

First install the package from pypi using the pip command

pip install mapmycode

Internally the library uses Groq api as the LLM endpoint. Please go to groq website and create a token for yourself.

Then in terminal run the below command

Windows Powershell: $env:GROQ_API_KEY = 'your_api_key_here'
Windows CMD: set GROQ_API_KEY=your_api_key_here
Linux/macOS: export GROQ_API_KEY=your_api_key_here

Once your api key has been successfully set, navigate to your code directory and run the below command

mapmycode .

This runs the package on your codebase and creates four files inside a folder called "mapmycode_output". The four files are

  1. Code documentation
  2. Codebase architecture diagram
  3. Json comprising of the descriptions of each file.
  4. The mermaid syntax (this can be used by the user to make any edits if required)

Note : The package currently only deals with python files. We plan to add support for other languages soon.

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

mapmycode-1.0.0.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

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

mapmycode-1.0.0-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for mapmycode-1.0.0.tar.gz
Algorithm Hash digest
SHA256 cd68e7d9c84eab5b34ff17b70476d3b8fb87e95f049670967929c9ff26c3f0ea
MD5 bea0ac049550ba91fb4abd7460cd5146
BLAKE2b-256 2de07fde7bf1fde4890d59a1f7b1f6415f0e30761d00844fb2f96e261f798372

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mapmycode-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for mapmycode-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2c3c5ed8488df2dd3881a2ee42ca788170d3def692d5c5d7747678b0f62ac227
MD5 e6860f9df90ae65f90ef4f1ea5f20cae
BLAKE2b-256 779bcdc1d20b6ccad2bacb5f678a479b6b1018976aa35c3c2d3f32f714561a14

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