{"id":30197630,"url":"https://github.com/mongodben/mimoid","last_synced_at":"2025-11-12T02:22:31.108Z","repository":{"id":305711398,"uuid":"1023175383","full_name":"mongodben/mimoid","owner":"mongodben","description":"Synthetic MongoDB database generation","archived":false,"fork":false,"pushed_at":"2025-08-04T13:21:18.000Z","size":905,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-13T06:43:38.708Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mongodben.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-20T17:24:13.000Z","updated_at":"2025-08-04T13:21:22.000Z","dependencies_parsed_at":"2025-07-21T17:40:39.281Z","dependency_job_id":"9d2a87bf-a036-4d6b-94ca-ff2d84ed82db","html_url":"https://github.com/mongodben/mimoid","commit_stats":null,"previous_names":["mongodben/mimoid"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mongodben/mimoid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodben%2Fmimoid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodben%2Fmimoid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodben%2Fmimoid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodben%2Fmimoid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mongodben","download_url":"https://codeload.github.com/mongodben/mimoid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mongodben%2Fmimoid/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":283962104,"owners_count":26923739,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-12T02:00:06.336Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-13T06:33:57.151Z","updated_at":"2025-11-12T02:22:31.087Z","avatar_url":"https://github.com/mongodben.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mimoid\n\nMimoid is a project for creating MongoDB databases from natural language. It is designed to take a flexible natural language input and create a well-designed MongoDB database schema and sample data that is representative of the input.\n\nExample inputs could include:\n- Blog post about a business use case\n- Product description\n- Anonymized info about a a real database\n- SQL database schema\n\n## Run Mimoid\n\nThe Mimoid workflow \n\nMimoid is a prompt workflow with some shared Python utilities in the `mimoid` package. It is optimized to be run with Claude Code. There are a series of Claude Code agents with custom system prompts to run the Mimoid workflow.\n\nOther agentic code editor tools like OpenAI Codex, Windsurf, or GitHub CoPilot may work as well.\n\nI give Claude Code a prompt like the following:\n\n```\nTake this input file \u003csome_input_file.md\u003e and use the Mimoid workflow to create the DB. Out to \u003csome_output_dir\u003e.\n\n\u003cCan add additional instructions here, if relevant\u003e\n```\n## Flow \n\nThe Mimoid workflow should follow this process:\n\n1. [User] Create a new directory for the project within the `projects` directory of this repository. E.g. `projects/my_project/`\n2. [User] Include some input file/files in the project directory. E.g. `projects/my_project/input.md`\n3. [LLM] proceeds through the Mimoid workflow as follows:\n   - [LLM] Step 1: Technical Design\n   - [LLM] Step 2: Database Architecture\n   - [LLM] Step 3: Seed Database\n   - [LLM] Step 4: Run and Iterate\n   - [LLM] Step 5: Database Documentation\n\nDetailed information on each of these steps can be found in the [.claude/agents](.claude/agents) directory. There is a separate agent for each step.\n\nThe LLM outputs the files to `projects/my_project/`\n\n\nIn the end the directory should contain the following files:\n\n```\n...other stuff in repo...\nprojects/my_project/\n├── tech_design.md\n├── db_schema.py\n├── seed_db.py\n├── main.py\n└── README.md\n```\n\nMore information on each step can be found in the [`.claude/agents`](.claude/agents) directory.\n\n## Development\n\n### Environment Setup\n```bash\n# Install dependencies\nuv sync\n\n# Install with dev dependencies  \nuv sync --extra dev\n\n# Set up environment variables\ncp .env.example .env\n# Edit .env with your MongoDB connection string\n```\n\n### Testing\n```bash\n# Run all tests\nuv run pytest\n\n# Run specific test file\nuv run pytest tests/test_schema_types.py\n\n# Run with verbose output\nuv run pytest tests/ -v\n```\n\n### Running Generated Databases\n```bash\n# Execute a generated database project\ncd projects/project_name\nuv run python main.py\n\n# With custom MongoDB URI\nMONGODB_URI=\"mongodb://custom:27017\" uv run python main.py\n\n# Example: Run the digital lending platform\ncd projects/digital_bank\nuv run python main.py\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmongodben%2Fmimoid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmongodben%2Fmimoid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmongodben%2Fmimoid/lists"}