Skip to content

CodeExplorerRay/hello-world-enterprise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hello World Enterprise Edition

build deploy greeting audit teapot status ai model frontend gateway rust java dotnet python feature flags sla runbook monitoring cost per greeting

The World's Most Over-Engineered Greeting

"Because saying 'Hello World' should require at least 47 microservices, an AI decision engine, and a teapot."

Welcome to HelloWorld Enterprise Edition™ — the pinnacle of software over-engineering. This project demonstrates how to take the simplest possible task (displaying "Hello World") and turn it into a distributed system with 9 microservices, 6 programming languages, cloud infrastructure, CI/CD, monitoring, and 47 architecture decision records.

Why This Exists

In the world of enterprise software, complexity is a virtue. Simplicity is for amateurs. This project proves that even "Hello World" deserves:

  • A microservices architecture
  • AI-powered decision making
  • A/B testing for punctuation
  • Feature flags for greeting words
  • A teapot health check (HTTP 418)
  • 24/7 monitoring and alerting
  • Railway service sprawl
  • Docker containers
  • Vercel preview deployments
  • And much more!

Demo Highlights

  • A live request form that sends user context through the API gateway
  • Cost-per-greeting accounting in the frontend
  • An April 1st easter egg that overrides the greeting with APRIL FOOLS
  • A richer OpenAPI contract in docs/api-specification.yaml
  • A Grafana dashboard asset in monitoring/dashboard.json
  • An operations runbook in docs/runbook.md
  • A changelog chronicling greeting-related drama in CHANGELOG.md

Architecture Overview

                                    THE ARCHITECTURE NOBODY ASKED FOR
                                    ==================================

    ┌─────────────┐     ┌────────────────────┐     ┌──────────────────────┐
    │   End User  │────▶│  Vercel Frontend   │────▶│  Railway API Gateway │
    │  (Browser)  │     │  (Next.js)         │     │  (Express.js)        │
    └─────────────┘     └────────────────────┘     └─────────┬────────────┘
                                                             │
                    ┌────────────────────────────────────────┼─────────────────────────────────────────┐
                    │                                        │                                         │
                    ▼                                        ▼                                         ▼
         ┌──────────────────────┐                ┌──────────────────────┐                  ┌──────────────────────┐
         │ Greeting AI Decision │                │ Feature Flag Service │                  │ HTCPCP Teapot       │
         │ Engine (Node.js)     │                │ (Node.js)            │                  │ Service (Go)        │
         └──────────────────────┘                └──────────────────────┘                  └──────────────────────┘
                    │                                        │                                         │
                    ├──────────────────────┬─────────────────┴───────────────┬─────────────────────────┤
                    │                      │                                 │                         │
                    ▼                      ▼                                 ▼                         ▼
         ┌──────────────────────┐  ┌──────────────────────┐        ┌──────────────────────┐  ┌──────────────────────┐
         │ Punctuation Service  │  │ Capitalization       │        │ Concatenation        │  │ A/B Testing Service  │
         │ (Rust)               │  │ Service (Spring)     │        │ Service (.NET)       │  │ (Python/Flask)       │
         └──────────────────────┘  └──────────────────────┘        └──────────────────────┘  └──────────────────────┘

Getting Started

Prerequisites

  • Node.js 18+
  • Go 1.21+
  • Rust 1.70+
  • Java 25+
  • .NET 7+
  • Python 3.11+
  • Docker
  • Railway account (for backend deployment)
  • Vercel account (for frontend deployment)

Local Development

  1. Clone this repo
  2. Start Docker Desktop and wait until Docker is running
  3. Copy .env.example to .env
  4. Add your Gemini API key to .env
  5. Run docker compose -f infrastructure/docker-compose.yml up --build
  6. Open http://localhost:3000

AI API Key Setup

The AI Decision Engine reads GEMINI_API_KEY from the repo-root .env file during local Docker Compose runs.

  1. Copy .env.example to .env
  2. Set: GEMINI_API_KEY=your_real_key_here
  3. Restart the stack with: docker compose -f infrastructure/docker-compose.yml up --build

If GEMINI_API_KEY is missing, the AI service falls back to mock responses automatically.

Production Deployment

  1. Set up your GitLab or GitHub repository
  2. Deploy backend services via Railway
  3. Configure the api-gateway service URLs in Railway
  4. Deploy the frontend via Vercel
  5. Add Netlify only if you want a secondary frontend deployment

Follow:

Services

API Gateway (Node.js/Express)

Routes requests to microservices with enterprise-grade rate limiting (1 request/minute).

AI Decision Engine (Node.js + Gemini)

Uses Google's Gemini AI to decide between "Hello", "Hi", "Hey", etc., considering moon phases and vibes. Real integration: Set GEMINI_API_KEY environment variable for actual Gemini Flash-Lite API calls. Demo mode: Falls back to mock responses when no API key is provided (perfect for demos and testing). Can also be demonstrated via Google AI Studio for the challenge submission.

HTCPCP Teapot Service (Go)

RFC 2324 compliant health check that returns HTTP 418 "I'm a teapot".

Punctuation Service (Rust)

Adds punctuation with memory safety guarantees.

Capitalization Service (Java/Spring Boot)

Capitalizes the first letter using enterprise Java.

String Concatenation Service (C#/.NET)

Concatenates strings with Microsoft-grade reliability.

Feature Flag Service (Node.js + Firestore)

Controls greeting variations via feature flags.

A/B Testing Service (Python/Flask)

Tests punctuation variants statistically.

Frontend (React/Next.js)

Displays the greeting with a loading animation showing all services.

Tech Stack

Component Technology Justification
API Gateway Node.js/Express Industry standard for routing
AI Engine Gemini Flash-Lite Latest Critical greeting decisions (with mock fallback)
Teapot Go Fast refusal to brew coffee
Punctuation Rust Memory safety for one character
Capitalization Java/Spring Enterprise capitalization
Concatenation C#/.NET Microsoft-grade joining
Feature Flags Node.js + Firestore Governance for greetings
A/B Testing Python/Flask Data-driven punctuation
Frontend React/Next.js SSR for 2 words
Database Firestore NoSQL for greeting words
Cache Redis Caching AI vibes
Infra Railway + Vercel Free-tier friendly backend and frontend hosting
CI/CD GitLab CI/CD 400 minutes/month free
Monitoring Platform logs + smoke checks Enough operational drama for two words

Extra Polish

  • Swagger/OpenAPI Documentation: docs/api-specification.yaml now documents the greeting contract, nested metadata, fallback behavior, and cost model in painful detail.
  • Grafana Dashboard: monitoring/dashboard.json includes panels for latency, AI confidence, teapot 418 counts, cost per greeting, and variant distribution.
  • SLA Document: SLA.md formalizes our deeply unserious uptime commitment.
  • On-Call Runbook: docs/runbook.md explains what to do when "Hello World" fails at 3 AM.
  • Cloud Run Deployment Guide: docs/cloud-run-deployment.md is kept as a legacy alternative if you want a GCP-based deployment path later.
  • Vercel Frontend Deployment Guide: docs/vercel-frontend-deployment.md documents the frontend-only deployment path.
  • CHANGELOG: CHANGELOG.md records the historical consequences of greeting drift.

Contributing

See CONTRIBUTING.md for our 14-step contribution process.

License

This project is licensed under the "Don't Use This In Production" license.

Disclaimer

This project solves exactly zero real-world problems. It's purely for entertainment and demonstrating the absurdity of over-engineering.

Estimated cloud cost: $0/month (free tiers for open-source).

Was it worth it? Yes, and it's free!

But did we have fun? Yes.

About

Over-engineered Hello World for DEV April Fools Challenge 2026

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors