Skip to content

Data-Engr101/DevVoteApp

Repository files navigation

Distributed Voting App (DevOps Sample Project)

This project demonstrates a basic distributed web application using containerization and orchestration tools like Docker and Kubernetes. It includes components written in multiple languages and showcases a common DevOps deployment pattern.

Key Features

  • Multi-language microservices (Python, Node.js, .NET Core)
  • Real-time messaging with Redis
  • Persistent storage using PostgreSQL
  • Containerized deployment with Docker
  • Kubernetes deployment YAMLs included

Technologies Used

  • Docker & Docker Compose
  • Docker Swarm (optional)
  • Kubernetes (YAML specs provided)
  • Redis
  • PostgreSQL
  • Python (Voting UI)
  • .NET Core (Worker)
  • Node.js (Results Dashboard)

Getting Started (Docker)

  1. Make sure Docker and Docker Compose are installed.
  2. Clone the repository and navigate into it.
  3. Run the application using:
docker compose up

Application Architecture
Frontend (Python) – Web UI for users to cast votes

Redis – Message queue for storing incoming votes

Worker (.NET Core) – Consumes votes and updates database

PostgreSQL – Stores results persistently

Results UI (Node.js) – Displays live voting results

Notes
Only one vote is allowed per client session.

This is a simplified demonstration project used to illustrate DevOps tooling and deployment processes in a containerized environment.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors