{"id":26267822,"url":"https://github.com/oslabs-beta/kafkalerts","last_synced_at":"2025-04-30T19:21:18.163Z","repository":{"id":152916485,"uuid":"625025109","full_name":"oslabs-beta/kafkalerts","owner":"oslabs-beta","description":"Open source, accessibility driven web application for monitoring and alerting Apache Kafka broker metrics","archived":false,"fork":false,"pushed_at":"2024-07-04T22:46:19.000Z","size":2334,"stargazers_count":46,"open_issues_count":4,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-08T10:53:18.284Z","etag":null,"topics":["accessibility","alerting","apache-kafka","broker","developer-tools","devtools","express","kafka","kafka-cluster","metrics","monitoring","monitoring-tool","nodejs","react","webapp"],"latest_commit_sha":null,"homepage":"http://www.kafkalerts.com","language":"JavaScript","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/oslabs-beta.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}},"created_at":"2023-04-07T21:35:32.000Z","updated_at":"2025-03-13T00:01:16.000Z","dependencies_parsed_at":"2024-03-07T20:35:45.354Z","dependency_job_id":null,"html_url":"https://github.com/oslabs-beta/kafkalerts","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2Fkafkalerts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2Fkafkalerts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2Fkafkalerts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2Fkafkalerts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oslabs-beta","download_url":"https://codeload.github.com/oslabs-beta/kafkalerts/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251767210,"owners_count":21640470,"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","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":["accessibility","alerting","apache-kafka","broker","developer-tools","devtools","express","kafka","kafka-cluster","metrics","monitoring","monitoring-tool","nodejs","react","webapp"],"created_at":"2025-03-14T04:18:24.640Z","updated_at":"2025-04-30T19:21:18.140Z","avatar_url":"https://github.com/oslabs-beta.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# kafkAlerts\n\n\u003cpicture text-align=\"center\"\u003e\n \u003cimg alt=\"kafkAlerts logo\" src=\"./client/src/assets/logo.png\" width=\"200\"\u003e\n\u003c/picture\u003e\n\n\u003ch3\u003eOpen source, usability driven web application for monitoring and alerting \u003ca href=\"http://kafka.apache.org\"\u003eApache Kafka®\u003c/a\u003e broker metrics\u003c/h3\u003e\n\n---\n\n## Table of Contents\n\n- [Product Description](#product-description)\n- [Install and Run](#install-and-run)\n- [Install Locally](#install-locally)\n- [How to Use](#how-to-use)\n- [Contribute](#contribute)\n- [Our Team](#our-team)\n- [License](#license)\n\n---\n\n## Product Description\n\nWith usability and accessibility at the forefront of all our design decisions, kafkAlerts offers a better way to visualize Kafka broker metrics and receive alerts. Only the most relevant data renders on the screen, including what brokers are alerting and appropriate metrics for those brokers.\n\nAll other brokers will be listed in your feed and can be expanded to view metrics with the click or press of a button.\n\n---\n\n## Install and Run\n\nTo begin using kafkAlerts, navigate to \u003ca href=\"http://www.kafkAlerts.com\"\u003ekafkalerts.com\u003c/a\u003e and create an account.\n\n- Make sure that Prometheus is running and connected to your cluster.\n- Click on the user menu icon in the top right.\n- Click on 'Connect Cluster'.\n- Input your Prometheus instance and broker ids.\n\n### Install Locally\n\nIf you would prefer to run kafkAlerts locally, you may fork and clone our Github repository.\n\n- In your terminal run:\n  - `npm install`\n  - `npm run dev`\n- Once the application is running, navigate to localhost:3000 and input the port of your Prometheus server and brokers you would like to monitor.\n\n---\n\n## How to Use\n\nOnce you have successfully installed kafkAlerts and connected to your cluster, simply log in to view all of your brokers in one place.\n\n- If any brokers are alerting, you will see them listed by id in your alerts menu.\n- Click on that id to be taken directly to the alerting broker. Here you can find metrics that may indicate where there is an issue.\n- Click on non-alerting brokers to view their metrics and see how they are generally performing.\n- To add more brokers, simply go to the user menu at the top, click on 'Connect Cluster' and add any additional broker ids.\n\n---\n\n## Contribute\n\nIf you would like to contribute to this product by improving current functionality or adding a feature, please fork the repository and submit a pull request.\n\nSome of our planned features for kafkAlerts include:\n\n- Additional testing\n- Custom metrics\n- User defined accessibility templates\n- Adding OAuth authentication\n- Alerting based on user defined SLIs\n- Expanding metric insights\n\n---\n\n## Our Team\n\nQuestions, comments, concerns... funny memes? Reach out to us any time!\n\n\u003ctable align=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./client/src/assets/headshots/hazel-headshot.jpg\" width=\"140px;\" alt=\"Hazel Bolivar's headshot\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eHazel Bolivar\u003c/b\u003e\u003c/sub\u003e\n      \u003cbr /\u003e\n      \u003ca href=\"https://github.com/hazelbolivar\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/github-logo.png\" width=\"20px;\" alt=\"Github\"/\u003e\u003c/a\u003e\n      \u003ca href=\"https://www.linkedin.com/in/hazelbolivar/\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/linkedIn-logo.png\" width=\"20px;\" alt=\"LinkedIn\"/\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./client/src/assets/headshots/ian-headshot.jpg\" width=\"140px;\" alt=\"Ian Flynn's headshot\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eIan Flynn\u003c/b\u003e\u003c/sub\u003e\n      \u003cbr /\u003e\n      \u003ca href=\"https://github.com/ian-flynn\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/github-logo.png\" width=\"20px;\" alt=\"Github\"/\u003e\u003c/a\u003e\n      \u003ca href=\"https://www.linkedin.com/in/ianrflynn/\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/linkedIn-logo.png\" width=\"20px;\" alt=\"LinkedIn\"/\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./client/src/assets/headshots/krystal-headshot.jpg\" width=\"140px;\" alt=\"Krystal Fung's headshot\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eKrystal Fung\u003c/b\u003e\u003c/sub\u003e\n      \u003cbr /\u003e\n      \u003ca href=\"https://github.com/klfung7\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/github-logo.png\" width=\"20px;\" alt=\"Github\"/\u003e\u003c/a\u003e\n      \u003ca href=\"https://www.linkedin.com/in/krystal-fung/\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/linkedIn-logo.png\" width=\"20px;\" alt=\"LinkedIn\"/\u003e\u003c/a\u003e\n    \u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./client/src/assets/headshots/annie-headshot.jpg\" width=\"140px;\" alt=\"Annie Rosen's headshot\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eAnnie Rosen\u003c/b\u003e\u003c/sub\u003e\n      \u003cbr /\u003e\n      \u003ca href=\"https://github.com/mezzocarattere\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/github-logo.png\" width=\"20px;\" alt=\"Github\"/\u003e\u003c/a\u003e\n      \u003ca href=\"https://www.linkedin.com/in/rosen-annie/\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/linkedIn-logo.png\" width=\"20px;\" alt=\"LinkedIn\"/\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./client/src/assets/headshots/jeb-headshot.jpg\" width=\"140px;\" alt=\"Jeb Stone's headshot\"/\u003e\n      \u003cbr /\u003e\n      \u003csub\u003e\u003cb\u003eJeb Stone\u003c/b\u003e\u003c/sub\u003e\n      \u003cbr /\u003e\n      \u003ca href=\"https://github.com/jeb-stone\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/github-logo.png\" width=\"20px;\" alt=\"Github\"/\u003e\u003c/a\u003e\n      \u003ca href=\"https://www.linkedin.com/in/jeb-stone/\"\u003e\u003cimg src=\"./client/src/assets/readme-icons/linkedIn-logo.png\" width=\"20px;\" alt=\"LinkedIn\"/\u003e\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n---\n\n# License\n\nMIT Licensed\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foslabs-beta%2Fkafkalerts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foslabs-beta%2Fkafkalerts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foslabs-beta%2Fkafkalerts/lists"}