{"id":25232119,"url":"https://github.com/mreshboboyev/rabbitmq-dotnet-core","last_synced_at":"2026-04-17T11:31:21.302Z","repository":{"id":274133011,"uuid":"921804849","full_name":"MrEshboboyev/rabbitmq-dotnet-core","owner":"MrEshboboyev","description":"This repository features Send and Receive console applications that interact with AWS, using RabbitMQ for messaging, EF Core for ORM, and PostgreSQL for persistence. It showcases an event-driven architecture to efficiently send and process messages in a scalable system.","archived":false,"fork":false,"pushed_at":"2025-04-18T12:23:51.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-19T01:04:02.700Z","etag":null,"topics":["aws","backend-development","clean-code","ef-core","event-driven-architecture","postgresql","queue-management","rabbitmq","transactional-messaging"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MrEshboboyev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2025-01-24T16:43:29.000Z","updated_at":"2025-04-18T12:23:54.000Z","dependencies_parsed_at":"2025-04-18T12:47:46.092Z","dependency_job_id":"3148fe32-0796-4a81-a9d6-7c86cf859fc5","html_url":"https://github.com/MrEshboboyev/rabbitmq-dotnet-core","commit_stats":null,"previous_names":["mreshboboyev/rabbitmq-dotnet-core"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MrEshboboyev/rabbitmq-dotnet-core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrEshboboyev%2Frabbitmq-dotnet-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrEshboboyev%2Frabbitmq-dotnet-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrEshboboyev%2Frabbitmq-dotnet-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrEshboboyev%2Frabbitmq-dotnet-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MrEshboboyev","download_url":"https://codeload.github.com/MrEshboboyev/rabbitmq-dotnet-core/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrEshboboyev%2Frabbitmq-dotnet-core/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31927656,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-17T10:35:34.458Z","status":"ssl_error","status_checked_at":"2026-04-17T10:35:09.472Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["aws","backend-development","clean-code","ef-core","event-driven-architecture","postgresql","queue-management","rabbitmq","transactional-messaging"],"created_at":"2025-02-11T12:55:18.036Z","updated_at":"2026-04-17T11:31:21.296Z","avatar_url":"https://github.com/MrEshboboyev.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📬 Newsletter System – Send \u0026 Receive Apps with AWS 🚀  \n\nThis repository contains two powerful **console applications**, **Send** and **Receive**, that work together to **handle messaging efficiently**. Built with **.NET**, **AWS**, **RabbitMQ**, and **PostgreSQL**, this system leverages **event-driven architecture** to ensure scalable, real-time message processing.  \n\n## 🌟 Key Features  \n\n✅ **Send \u0026 Receive Console Apps** – Dedicated applications for sending and processing messages.  \n✅ **AWS Integration** – Communicates with AWS services for cloud-based message handling.  \n✅ **RabbitMQ Messaging** – Ensures asynchronous, reliable message queuing.  \n✅ **Event-Driven Architecture** – Decouples services for better scalability and maintainability.  \n✅ **EF Core + PostgreSQL** – Provides efficient and structured data persistence.  \n\n---\n\n## 🛠 How It Works  \n\n### **1️⃣ The Send Application**  \n- Generates and sends messages to **RabbitMQ**.  \n- Stores relevant data in **PostgreSQL via EF Core**.  \n- Publishes events for further processing.  \n\n### **2️⃣ The Receive Application**  \n- Listens for messages from **RabbitMQ**.  \n- Processes and stores the data in **PostgreSQL**.  \n- Ensures **fault tolerance** and **retry mechanisms** for reliability.  \n\n---\n\n## 📂 Technologies Used  \n\n🔹 **.NET Core** – Cross-platform application development.  \n🔹 **AWS** – Cloud-based infrastructure support.  \n🔹 **RabbitMQ** – Message broker for asynchronous event processing.  \n🔹 **EF Core** – ORM for PostgreSQL database interaction.  \n🔹 **PostgreSQL** – Reliable and scalable relational database.  \n🔹 **Console Applications** – Lightweight, high-performance message handlers.  \n\n---\n\n## 🚀 Getting Started  \n\n### **Prerequisites**  \nBefore running the application, make sure you have:  \n✅ **.NET SDK** installed  \n✅ **RabbitMQ** running locally or on AWS  \n✅ **PostgreSQL** database set up  \n✅ **AWS credentials** configured (if needed)  \n\n### **Step 1: Clone the Repository**  \n```bash  \ngit clone https://github.com/MrEshboboyev/rabbitmq-dotnet-core\ncd newsletter  \n```  \n\n### **Step 2: Configure RabbitMQ \u0026 PostgreSQL**  \n- Ensure RabbitMQ is running on **localhost:5672** or update the connection string in `appsettings.json`.  \n- Create a PostgreSQL database and update the connection string in the project.  \n\n### **Step 3: Run the Applications**  \n\n**Start the Send Application**  \n```bash  \ndotnet run --project src/Send  \n```  \n\n**Start the Receive Application**  \n```bash  \ndotnet run --project src/Receive\n```  \n\nNow, messages sent via **SendApp** will be processed by **ReceiveApp** in real-time!  \n\n---\n\n## 🧪 Testing \u0026 Reliability  \n\nThe system includes:  \n✅ **Retry Mechanisms** – Messages are reprocessed in case of failure.  \n✅ **Logging \u0026 Monitoring** – Tracks messages and failures efficiently.  \n✅ **Database Persistence** – Ensures messages are stored and retrieved securely.  \n\n---\n\n## 🔥 Why Use This System?  \n\n✅ **Asynchronous \u0026 Scalable** – Handles high message loads efficiently.  \n✅ **Cloud-Ready** – Seamless AWS integration for deployment.  \n✅ **Resilient \u0026 Fault-Tolerant** – Uses RabbitMQ to prevent data loss.  \n✅ **High Performance** – Optimized for event-driven architectures.  \n\n---\n\n## 🏗 About the Author  \nThis project was developed by [MrEshboboyev](https://github.com/MrEshboboyev), a **.NET expert** specializing in **event-driven systems and scalable architectures**.  \n\n## 📄 License  \nThis project is licensed under the **MIT License**. Feel free to use and contribute!  \n\n---\n\n🚀 **Ready to build scalable, cloud-powered message processing systems?** Clone the repo and start now!  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmreshboboyev%2Frabbitmq-dotnet-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmreshboboyev%2Frabbitmq-dotnet-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmreshboboyev%2Frabbitmq-dotnet-core/lists"}