All Projects

damj.

A Python package that turns a whole project's files into one well-structured LLM prompt.

Generative AI & LLMsArchived — v0.1.4v0.1.4Apache 2.0Python2,100+
33
Downloads / month
PyPI · last 30 days
0.1.4
Latest version
5
PyPI releases
2,100+
Milestone downloads

Overview

Problem

Feeding a whole project to an LLM, by hand, doesn't scale

damj combines project files into a single, well-structured prompt with configurable processing options — including comments/imports/docstrings toggles for Python files and Jupyter notebook support (with or without cell outputs).

Usage

A few lines to go from a directory to a prompt

  • damj.project_info() sets an overview and optionally includes the project structure
  • damj.create_prompt(question=...) builds the final prompt string
  • whitelist_files / blacklist_files control which files are included
  • py_options controls per-file Python processing (imports, comments, docstrings)

How it works

damj walks a project directory, applies configurable per-file-type processing, and combines the result into a single structured prompt aimed at a question.

Project files
whitelist/blacklist filters
Per-file processing
imports, comments, docstrings, notebook cells
Prompt
one structured string, ready for an LLM

Install & use

PyPI
$ pip install damj
From source
$ git clone https://github.com/baselhusam/damj.git
$ cd damj
$ pip install .
quick start
$ import os
$ from damj import Damj
 
$ damj = Damj(os.getcwd())
$ damj.project_info(project_overview="...", add_project_structure=True)
$ prompt = damj.create_prompt(question="What is the purpose of this project?")

Built with

Python
core package
PyPI
pip install damj