{"id":50556041,"url":"https://github.com/abdullahmia/compooss","last_synced_at":"2026-06-04T07:02:34.655Z","repository":{"id":351093596,"uuid":"1176120213","full_name":"abdullahmia/compooss","owner":"abdullahmia","description":"Compooss is a lightweight MongoDB database client designed to run inside your docker-compose stack during development. The goal is to give you an easy way to explore and manage your MongoDB data without installing a separate GUI app on your machine.","archived":false,"fork":false,"pushed_at":"2026-05-29T09:26:51.000Z","size":3858,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-29T10:05:51.547Z","etag":null,"topics":["database-client","database-management","mongodb","mongodb-atlas","mongodb-compass","mongodb-database"],"latest_commit_sha":null,"homepage":"https://compooss.vercel.app","language":"TypeScript","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/abdullahmia.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"docs/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","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-03-08T16:40:13.000Z","updated_at":"2026-05-29T09:26:45.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/abdullahmia/compooss","commit_stats":null,"previous_names":["abdullahmia/compooss"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/abdullahmia/compooss","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdullahmia%2Fcompooss","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdullahmia%2Fcompooss/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdullahmia%2Fcompooss/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdullahmia%2Fcompooss/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abdullahmia","download_url":"https://codeload.github.com/abdullahmia/compooss/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abdullahmia%2Fcompooss/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33893323,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-04T02:00:06.755Z","response_time":64,"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":["database-client","database-management","mongodb","mongodb-atlas","mongodb-compass","mongodb-database"],"created_at":"2026-06-04T07:02:33.622Z","updated_at":"2026-06-04T07:02:34.642Z","avatar_url":"https://github.com/abdullahmia.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Compooss\n\n\u003e A lightweight, self-hosted MongoDB GUI that drops into any Docker stack — no desktop app, no cloud signup, no fuss.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n[![Version](https://img.shields.io/badge/version-1.7.0-green.svg)](docs/CHANGELOG.md)\n[![Docker Hub](https://img.shields.io/docker/pulls/abdullahmia/compooss)](https://hub.docker.com/r/abdullahmia/compooss)\n[![GitHub Issues](https://img.shields.io/github/issues/abdullahmia/compooss)](https://github.com/abdullahmia/compooss/issues)\n[![GitHub Stars](https://img.shields.io/github/stars/abdullahmia/compooss)](https://github.com/abdullahmia/compooss/stargazers)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](docs/CONTRIBUTING.md)\n\n![Compooss Preview](docs/preview.jpeg)\n\n---\n\n## Table of Contents\n\n- [What is Compooss?](#what-is-compooss)\n- [Features](#features)\n- [Quick Start](#quick-start)\n- [Development Setup](#development-setup)\n- [Monorepo Structure](#monorepo-structure)\n- [Contributing](#contributing)\n- [Roadmap](#roadmap)\n- [License](#license)\n\n---\n\n## What is Compooss?\n\nCompooss is a MongoDB GUI built for **local and team development**. It runs as a Docker container and sits next to your MongoDB service in a `docker-compose` stack. Open your browser, connect to any MongoDB instance, and explore — no installation, no account required.\n\n---\n\n## Features\n\n| | |\n|---|---|\n| **Database \u0026 Collection Explorer** | Browse databases and collections from a sidebar with live stats |\n| **Document CRUD** | Query, filter, sort, paginate, and edit documents with a Monaco JSON editor |\n| **Index Management** | Create, drop, hide/unhide indexes — all major index types supported |\n| **Schema Analysis** | Sample documents to infer schema, field types, frequency, and distributions |\n| **Aggregation Pipelines** | Visual pipeline builder with stage templates, previews, and saved pipelines |\n| **Embedded Shell** | Browser-based MongoDB shell with autocomplete, history, and syntax highlighting |\n| **Multiple Connections** | Save, color-code, and switch between connection profiles stored in IndexedDB |\n\nSee [`docs/FEATURES.md`](docs/FEATURES.md) for the complete feature breakdown by version.\n\n---\n\n## Quick Start\n\n### Docker Compose (recommended)\n\nAdd Compooss next to your MongoDB service:\n\n```yaml\nservices:\n  mongo:\n    image: mongo:7\n    ports:\n      - \"27017:27017\"\n\n  compooss:\n    image: abdullahmia/compooss:latest\n    ports:\n      - \"8080:3000\"\n    depends_on:\n      - mongo\n```\n\nThen open **http://localhost:8080** and connect to `mongodb://mongo:27017`.\n\n### Docker Run\n\n```bash\ndocker run -p 8080:3000 abdullahmia/compooss:latest\n```\n\nOpen **http://localhost:8080** and connect to your MongoDB instance.\n\n### Production (self-hosted)\n\nUse the production compose file included in this repo:\n\n```bash\nMONGO_ROOT_USERNAME=admin MONGO_ROOT_PASSWORD=secret \\\n  docker compose -f docker/docker-compose.yml up -d\n```\n\n---\n\n## Development Setup\n\nThis repository is a **Turborepo monorepo** managed with [Bun](https://bun.sh).\n\n### Prerequisites\n\n- [Bun](https://bun.sh) 1.x\n- [Docker](https://www.docker.com) (for running a local MongoDB)\n- [Node.js](https://nodejs.org) 20+ (only needed for the standalone server in Docker)\n\n### Setup\n\n```bash\n# 1. Clone the repo\ngit clone https://github.com/abdullahmia/compooss.git\ncd compooss\n\n# 2. Install dependencies\nbun install\n\n# 3. Start a local MongoDB\ndocker compose -f docker/docker-compose.dev.yml up -d\n\n# 4. Start the app\nbun dev\n```\n\nOpen **http://localhost:3000**, then connect to `mongodb://root:example@localhost:27017/?authSource=admin`.\n\n### Scripts\n\n| Command | Description |\n|---|---|\n| `bun dev` | Start all apps in dev mode (Turbo TUI) |\n| `bun build` | Build all packages and apps |\n| `bun lint` | Run ESLint across the monorepo |\n| `bun type-check` | Run TypeScript type checking |\n\nSee [`docs/DEVELOPMENT.md`](docs/DEVELOPMENT.md) for a deeper guide on the codebase and architecture.\n\n---\n\n## Monorepo Structure\n\n```\ncompooss/\n├── apps/\n│   ├── compooss/        # Main MongoDB GUI (Next.js 15)\n│   └── docs/            # Landing page / documentation site\n├── packages/\n│   ├── types/           # Shared TypeScript types (@compooss/types)\n│   └── ui/              # Shared UI components (@compooss/ui)\n├── docker/\n│   ├── docker-compose.dev.yml   # Local dev — MongoDB only\n│   └── docker-compose.yml       # Production — MongoDB + app\n├── docs/                # Project documentation\n└── Dockerfile           # Multi-stage build for the compooss app\n```\n\n---\n\n## Contributing\n\nContributions of all sizes are welcome — bug reports, feature ideas, docs improvements, and code fixes.\n\n**New to the project?** Look for issues tagged [`good first issue`](https://github.com/abdullahmia/compooss/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — these are small, well-scoped tasks with clear instructions.\n\nQuick checklist before opening a PR:\n- Branch from `development`, not `main`\n- Follow [Conventional Commits](https://www.conventionalcommits.org) — enforced by Commitlint\n- Run `bun lint` and `bun type-check` before submitting\n\nRead [`docs/CONTRIBUTING.md`](docs/CONTRIBUTING.md) for the full guide and [`docs/DEVELOPMENT.md`](docs/DEVELOPMENT.md) for local setup.\n\n---\n\n## Roadmap\n\n- Theming — system, dark, and light mode\n- Optional auth for shared dev environments\n- Richer query builder and UX improvements\n\nSee [`docs/FEATURES.md`](docs/FEATURES.md) and [`docs/CHANGELOG.md`](docs/CHANGELOG.md) for the full history and planned work.\n\n---\n\n## License\n\n[MIT](LICENSE) © [Abdullah Mia](https://abdullah.iam.bd/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabdullahmia%2Fcompooss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabdullahmia%2Fcompooss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabdullahmia%2Fcompooss/lists"}