{"id":47282276,"url":"https://github.com/kkiwior/kouma","last_synced_at":"2026-04-02T16:28:39.748Z","repository":{"id":344684886,"uuid":"1182708360","full_name":"kkiwior/kouma","owner":"kkiwior","description":"Pixel-based screenshot comparison solution for visual regression testing. ","archived":false,"fork":false,"pushed_at":"2026-03-28T13:34:48.000Z","size":2066,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-03-28T13:58:17.101Z","etag":null,"topics":["comparison-tool","regression-testing","visual-testing"],"latest_commit_sha":null,"homepage":"https://kkiwior.github.io/kouma/","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/kkiwior.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"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":null,"dco":null,"cla":null}},"created_at":"2026-03-15T21:40:26.000Z","updated_at":"2026-03-28T13:34:51.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/kkiwior/kouma","commit_stats":null,"previous_names":["kkiwior/kouma"],"tags_count":39,"template":false,"template_full_name":null,"purl":"pkg:github/kkiwior/kouma","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkiwior%2Fkouma","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkiwior%2Fkouma/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkiwior%2Fkouma/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkiwior%2Fkouma/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kkiwior","download_url":"https://codeload.github.com/kkiwior/kouma/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkiwior%2Fkouma/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31309924,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"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":["comparison-tool","regression-testing","visual-testing"],"created_at":"2026-03-16T02:02:23.361Z","updated_at":"2026-04-02T16:28:39.741Z","avatar_url":"https://github.com/kkiwior.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kouma\r\n\r\nKouma is a **pixel-based screenshot comparison solution** for visual regression testing. It helps you catch unintended visual changes in your application by comparing screenshots against a known baseline.\r\n\r\n## What Kouma Offers\r\n\r\n- **Pixel-Based Comparison:** Precise visual regression detection comparing screenshots pixel-by-pixel with configurable color thresholds and antialiasing support.\r\n- **Web Dashboard:** Inspect test results, review visual mismatches, and maintain baseline builds through an intuitive interface.\r\n- **Go Engine:** High-performance comparison engine written in Go with concurrent goroutine processing for fast results.\r\n- **CLI \u0026 Client Library:** Zero-dependency TypeScript client with CLI, programmatic API, and built-in Cypress and Playwright integration to upload screenshots and trigger comparisons.\r\n- **Docker Ready:** Quick local setup with Docker Compose and production-ready Kubernetes deployment via Helm charts.\r\n- **Flexible Authentication:** Supports passcode, Microsoft OAuth, and Google OAuth with optional domain restriction.\r\n\r\n## How It Works\r\n\r\n1. **Take screenshots** in your tests using any framework (Cypress, Playwright, Selenium, etc.).\r\n2. **Upload screenshots** to Kouma using the CLI, client library, or Cypress/Playwright plugin.\r\n3. **Kouma compares** each screenshot against the baseline pixel-by-pixel.\r\n4. **Review results** in the web dashboard — approve changes or flag regressions.\r\n5. **Maintain baselines** by rebasing builds when visual changes are intentional.\r\n\r\n## Architecture Overview\r\n\r\nKouma consists of four main services running as Docker containers and communicating through an internal network:\r\n\r\n| Service       | Technology  | Purpose                        |\r\n| ------------- | ----------- | ------------------------------ |\r\n| **Dashboard** | Bun + Vue 3 | Web UI and REST API            |\r\n| **Engine**    | Go          | Screenshot comparison          |\r\n| **MongoDB**   | MongoDB   | Data storage                   |\r\n\r\n## Quick Start\r\n\r\n### Docker Compose\r\n\r\n```bash\r\ngit clone https://github.com/kkiwior/kouma.git\r\ncd kouma\r\ndocker-compose up\r\n```\r\n\r\nOpen [http://localhost:3001](http://localhost:3001) in your browser.\r\n\r\n### Kubernetes with Helm\r\n\r\n```bash\r\nhelm install kouma oci://ghcr.io/kkiwior/charts/kouma\r\n```\r\n\r\n## Packages\r\n\r\n| Package | Address |\r\n| --- | --- |\r\n| Dashboard image | `ghcr.io/kkiwior/kouma/dashboard` |\r\n| Engine image | `ghcr.io/kkiwior/kouma/engine` |\r\n| Helm chart | `oci://ghcr.io/kkiwior/charts/kouma` |\r\n| npm client | [`kouma-client`](https://www.npmjs.com/package/kouma-client) |\r\n\r\n## Screenshots\r\n\r\n![Kouma Home](docs/public/home.png)\r\n\r\n![Kouma Project](docs/public/project.png)\r\n\r\n![Kouma Build](docs/public/build.png)\r\n\r\n## Documentation\r\n\r\nFor more information, installation instructions, and guides, please refer to the documentation in the `docs/` directory or [docs page](https://kkiwior.github.io/kouma/).\r\n\r\n## Credits\r\n\r\nThis project is a fork of [Micoo](https://github.com/Mikuu/Micoo).\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkkiwior%2Fkouma","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkkiwior%2Fkouma","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkkiwior%2Fkouma/lists"}