{"id":43779300,"url":"https://github.com/lucasscarioca/lazycompass","last_synced_at":"2026-02-18T16:00:48.921Z","repository":{"id":336679362,"uuid":"1149282892","full_name":"lucasscarioca/lazycompass","owner":"lucasscarioca","description":"MongoDB TUI/CLI with git-friendly configs and saved queries.","archived":false,"fork":false,"pushed_at":"2026-02-05T17:25:12.000Z","size":210,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-06T02:25:29.813Z","etag":null,"topics":["cli","crossterm","database-tools","developer-tools","mongodb","ratatui","rust","tui"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lucasscarioca.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-03T23:52:51.000Z","updated_at":"2026-02-05T17:25:15.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/lucasscarioca/lazycompass","commit_stats":null,"previous_names":["lucasscarioca/lazycompass"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/lucasscarioca/lazycompass","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasscarioca%2Flazycompass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasscarioca%2Flazycompass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasscarioca%2Flazycompass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasscarioca%2Flazycompass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lucasscarioca","download_url":"https://codeload.github.com/lucasscarioca/lazycompass/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucasscarioca%2Flazycompass/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29585441,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T13:56:48.962Z","status":"ssl_error","status_checked_at":"2026-02-18T13:54:34.145Z","response_time":162,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["cli","crossterm","database-tools","developer-tools","mongodb","ratatui","rust","tui"],"created_at":"2026-02-05T18:00:42.404Z","updated_at":"2026-02-18T16:00:48.915Z","avatar_url":"https://github.com/lucasscarioca.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LazyCompass\n\nLazyCompass is a fast, vim-first MongoDB client for the terminal. It runs as a TUI by default, with CLI subcommands for running saved or inline queries/aggregations. Queries and aggregations can be persisted as git-committable JSON files so teams can share them per repo.\n\n\u003e Disclaimer: LazyCompass is an independent open-source project and is not affiliated with or endorsed by MongoDB, Inc.\n\n## Pre-1.0 stability\n\nLazyCompass is pre-1.0. Breaking changes may happen in minor releases until 1.0; see `VERSIONING.md` and `CHANGELOG.md` for details.\n\n## Installation\n\nPrebuilt binaries from GitHub releases:\n\n```bash\n./install.sh\n```\n\nInstall via curl:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/lucasscarioca/lazycompass/main/install.sh | bash\n```\n\nBuild from source or install via Cargo (requires Rust toolchain):\n\n```bash\ncargo install --path . -p lazycompass --locked\n```\n\nUpgrade (re-runs the installer):\n\n```bash\nlazycompass upgrade\n```\n\nVerification:\n\n- The installer verifies release asset checksums when a `.sha256` file is present.\n- If a `.sha256.sig` signature is present and `gpg` is installed, the installer verifies it too.\n\nManual verification example (Linux x64):\n\n```bash\ncurl -LO https://github.com/lucasscarioca/lazycompass/releases/latest/download/lazycompass-linux-x64.tar.gz\ncurl -LO https://github.com/lucasscarioca/lazycompass/releases/latest/download/lazycompass-linux-x64.tar.gz.sha256\ncurl -LO https://github.com/lucasscarioca/lazycompass/releases/latest/download/lazycompass-linux-x64.tar.gz.sha256.sig\n\ngpg --verify lazycompass-linux-x64.tar.gz.sha256.sig lazycompass-linux-x64.tar.gz.sha256\nsha256sum -c lazycompass-linux-x64.tar.gz.sha256 2\u003e/dev/null || shasum -a 256 -c lazycompass-linux-x64.tar.gz.sha256\n```\n\n## Usage\n\nQuick start (existing repo):\n\n1. `cd` into the repo (or any subdirectory inside it).\n2. Run the setup wizard (creates/updates `.lazycompass/config.toml` and adds a connection):\n\n```bash\nlazycompass init\n```\n\n3. If your connection URI in config uses env interpolation (example below), set that variable:\n\n```toml\n[[connections]]\nname = \"primary\"\nuri = \"${MONGO_URI}\"\ndefault_database = \"app\"\n```\n\n```bash\nexport MONGO_URI='mongodb://localhost:27017/app'\n```\n\nor put it in repo root `.env`:\n\n```dotenv\nMONGO_URI=mongodb://localhost:27017/app\n```\n\n4. Start LazyCompass:\n\n```bash\nlazycompass\n```\n\nEnv var naming:\n\n- LazyCompass does not require a fixed URI var name. It resolves whatever you reference in config (`${VAR}`).\n- `MONGO_URI` is a convention used in docs/examples; `MONGODB_URL` or `DATABASE_URL` also work if config uses that exact name.\n- `.env` is auto-loaded from repo root for repo config and from `~/.config/lazycompass/.env` for global config.\n- Real environment variables take precedence over `.env` values.\n\nWrite actions open your `$VISUAL` or `$EDITOR` for JSON editing (command + args only; no shell expansion).\n\nDocuments screen keys: `i` insert, `e` edit, `d` delete, `Q` save query, `A` save aggregation, `r` run saved query, `a` run saved aggregation. Connections screen key: `n` add connection.\n\nRun a saved query or aggregation:\n\n```bash\nlazycompass query app.users.active_users\nlazycompass agg app.orders.orders_by_user --table\nlazycompass query recent_orders --db app --collection orders\n```\n\nRun an inline query or aggregation:\n\n```bash\nlazycompass query --db lazycompass --collection users --filter '{\"active\": true}'\nlazycompass agg --db lazycompass --collection orders --pipeline '[{\"$group\": {\"_id\": \"$userId\", \"total\": {\"$sum\": \"$total\"}}}]'\n```\n\nManage config and data:\n\n```bash\nlazycompass init\nlazycompass config edit\nlazycompass config add-connection\nlazycompass insert --db lazycompass --collection users --document '{\"email\": \"a@example.com\"}'\nlazycompass update --db lazycompass --collection users --id '{\"$oid\":\"64e1f2b4c2a3e02c9a0a9c10\"}' --document '{\"email\": \"a@example.com\", \"active\": true}'\n```\n\n## Configuration\n\nSee `CONFIGURATION.md` and `QUERY_FORMAT.md` for config and saved query formats.\n\n## Docs\n\n- `CONFIGURATION.md`\n- `QUERY_FORMAT.md`\n- `VERSIONING.md`\n- `RELEASE.md`\n- `CHANGELOG.md`\n\n## Contributing\n\nSee `CONTRIBUTING.md`.\n\n## License\n\nMIT. See `LICENSE`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucasscarioca%2Flazycompass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flucasscarioca%2Flazycompass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucasscarioca%2Flazycompass/lists"}