Skip to content

alicift/NodeRED-GitHub-Telegram-Notifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🚀 GitHub to Telegram Notification System

A real-time CI/CD notification pipeline built with Node-RED.

This project bridges the gap between GitHub and Telegram, allowing developers to receive instant, detailed notifications on their mobile devices whenever a push or commit occurs in their repositories. It utilizes Webhooks for real-time data and Node-RED for logic processing.

Ekran görüntüsü 2026-01-27 014859 Ekran görüntüsü 2026-01-27 014918

🌟 Key Features

  • Real-Time Alerts: Receive notifications within seconds of a git push.
  • Detailed Insights: The message includes:
    • 📁 Repository Name
    • 👤 Contributor Name
    • 📝 Commit Message / Note
  • Multi-Repo Support: Can handle webhooks from multiple repositories simultaneously using a single dynamic flow.
  • Smart Filtering: Distinguishes between "Ping" events and actual "Push" data to prevent spam.

🛠️ Tech Stack

  • Node-RED: For visual flow-based programming and API handling.
  • Node.js: The runtime environment.
  • Telegram Bot API: For delivering messages to the end-user.
  • GitHub Webhooks: For triggering the events.
  • Ngrok: For exposing the local server (localhost) to the internet during development.

📸 Screenshots

Ngrok Flow

It expose the local server to the internet and letting you see the flow.

Ekran görüntüsü 2026-01-27 014939

Ngrok_flow2

Mobile Notification Result

Here is how the notifications appear on the mobile device:

WhatsApp Image 2026-01-27 at 02 08 47


⚙️ How to Run

  1. Clone the Repository:

    git clone [https://github.com/alicift/NodeRED-GitHub-Telegram-Notifier.git]
  2. Import Flow:

    • Open Node-RED (http://localhost:1880).
    • Go to Menu -> Import.
    • Select the flow.json file from this repository.
  3. Configuration:

    • Telegram Sender Node: Add your own Bot Token (from BotFather).
    • Function Node: Update the chatId variable with your Telegram User ID.
  4. Setup Webhook:

    • Start ngrok: ngrok http 1880
    • Go to your GitHub Repo -> Settings -> Webhooks.
    • Add Payload URL: https://your-ngrok-url.ngrok.io/github-webhook
    • Content type: application/json

🤝 Contributing

Feel free to fork this project and add new features like "Pull Request" notifications or "Issue Tracking".


Developed by Ali

About

Real-time GitHub push notifications sent directly to Telegram using Node-RED and Webhooks.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors