# ❌ No-as-a-Service

No-as-a-Service Banner

Ever needed a graceful way to say β€œno”? This tiny API returns random, generic, creative, and sometimes hilarious rejection reasons β€” perfectly suited for any scenario: personal, professional, student life, dev life, or just because. Built for humans, excuses, and humor. --- ## πŸš€ API Usage **Base URL** ``` https://your-domain.com/no ``` **Method:** `GET` **Rate Limit:** `10 requests per minute per IP` ### πŸ”„ Example Request ```http GET /no ``` ### βœ… Example Response ```json { "reason": "This feels like something Future Me would yell at Present Me for agreeing to." } ``` Use it in apps, bots, landing pages, Slack integrations, rejection letters, or wherever you need a polite (or witty) no. --- ## πŸ› οΈ Self-Hosting Want to run it yourself? It’s lightweight and simple. ### 1. Clone this repository ```bash git clone https://github.com/hotheadhacker/no-as-a-service.git cd no-as-a-service ``` ### 2. Install dependencies ```bash npm install ``` ### 3. Start the server ```bash npm start ``` The API will be live at: ``` http://localhost:3000/no ``` You can also change the port using an environment variable: ```bash PORT=5000 npm start ``` --- ## πŸ“ Project Structure ``` no-as-service/ β”œβ”€β”€ index.js # Express API β”œβ”€β”€ reasons.json # 1000+ universal rejection reasons β”œβ”€β”€ package.json └── README.md ``` --- ## πŸ“¦ package.json For reference, here’s the package config: ```json { "name": "no-as-service", "version": "1.0.0", "description": "A lightweight API that returns random rejection or no reasons.", "main": "index.js", "scripts": { "start": "node index.js" }, "author": "hotheadhacker", "license": "MIT", "dependencies": { "express": "^4.18.2", "express-rate-limit": "^7.0.0" } } ``` --- ## πŸ‘€ Author Created with creative stubbornness by [hotheadhacker](https://github.com/hotheadhacker) --- ## πŸ“„ License MIT β€” do whatever, just don’t say yes when you should say no.