A containerized, full-stack web application that generates hilarious, random excuses so you don't have to.
This project uses an NGINX reverse proxy to serve a responsive, comic-book-themed frontend while routing API requests to a containerized Node.js backend running the No-as-a-Service API.
- One-Click Excuse Generation: Pulls random, funny rejections directly from the API.
- Smart Dark Mode: Automatically detects system preferences and includes a manual toggle that saves to local storage.
- Fully Responsive: Beautiful, comic-book-inspired UI that scales perfectly on desktops, tablets, and phones.
- SEO & Social Ready: Fully loaded with Open Graph and Twitter Card meta tags for rich link previews.
- Dockerized: Easily deployable using Docker and Docker Compose. NGINX acts as the frontend web server and reverse proxy for the Node backend.
Ensure your repository matches the following structure before deploying:
.
βββ docker-compose.yml # Defines the NGINX and Node.js API services
βββ api/
β βββ Dockerfile # Clones the API repo and builds the Node environment
βββ frontend/
βββ nginx.conf # NGINX reverse proxy and routing configuration
βββ html/
βββ index.html # The main frontend application
βββ no.jpeg # The hero image displayed on the page