Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/satya04m/rss-aggregator_golang
The Go Web Server and RSS Scraper project is a Go-based application designed to fetch, parse, and serve RSS feeds. It provides a robust web server with modular components for handling various aspects of RSS feed processing, error handling, and user management.
https://github.com/satya04m/rss-aggregator_golang
docker github-actions golang grafana kubernetes postgresql prometheus
Last synced: 27 days ago
JSON representation
The Go Web Server and RSS Scraper project is a Go-based application designed to fetch, parse, and serve RSS feeds. It provides a robust web server with modular components for handling various aspects of RSS feed processing, error handling, and user management.
- Host: GitHub
- URL: https://github.com/satya04m/rss-aggregator_golang
- Owner: satya04m
- Created: 2024-08-13T17:03:34.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-08-13T17:34:22.000Z (3 months ago)
- Last Synced: 2024-10-11T06:03:23.848Z (27 days ago)
- Topics: docker, github-actions, golang, grafana, kubernetes, postgresql, prometheus
- Language: Go
- Homepage:
- Size: 138 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Go Web Server and RSS Scraper
## Overview
The **Go Web Server and RSS Scraper** project is a Go-based application designed to fetch, parse, and serve RSS feeds. It provides a robust web server with modular components for handling various aspects of RSS feed processing, error handling, and user management.
## Tech Stack
- **Go**: Core programming language for implementing the web server and RSS scraper.
- **PostgreSQL**: Database management system for storing RSS feed data.
- **Gin**: Web framework for building the RESTful API.
- **Gorm**: ORM for database interactions.
- **Docker**: Containerizes the application for consistent deployment.
- **GitHub Actions**: Automates CI/CD pipeline for the project.
- **Kubernetes**: Orchestrates containerized application deployment.
- **Prometheus & Grafana**: Used for monitoring and logging application performance.## Output
Here are some examples of the outputs generated by the Go Web Server and RSS Scraper:
- **RSS Feed Data**: Access and interact with various RSS feeds.
- **API Responses**: View the data and results provided by the RESTful API.## Pipeline Flow
- **Data Collection**: Fetches and parses RSS feeds from various sources.
- **API Endpoints**: Provides RESTful endpoints to interact with the feed data.
- **Error Handling**: Robust error handling and logging for reliability.
- **Containerization**: Containerizes the application using Docker.
- **CI/CD Pipeline**:
- **Code Commit & Push**: Code is pushed to the GitHub repository.
- **GitHub Actions Trigger**: GitHub Actions triggers the pipeline upon code push.
- **Build & Test**: Builds the application and runs tests.
- **Docker Build**: Builds a Docker image of the application.
- **Push Docker Image**: Pushes the Docker image to a container registry.
- **Deploy to Kubernetes**: Deploys the application to a Kubernetes cluster.
- **Monitoring & Logging**: Uses Prometheus and Grafana for monitoring and logging the application’s performance.