β¨ Generate beautiful, tech-themed haiku SVGs for your GitHub README!
HaikuReadme generates poetic, customizable haiku SVGs you can embed in your GitHub profile. Choose from themes, layouts, and border styles β perfect for developers with a love for code and creativity.
π Live demo: HaikuReadme Web
- HaikuReadme
- π Table of Contents
- π Features
- π¦ Usage
- π¨ Theme Previews
- β‘ Quick Start
- π οΈ Installation & Deployment
- π Automated Updates (Optional)
- π§ͺ Local Development
- βοΈ Environment Variables
- π€ Contributing
- π Community
- Technologies Used in HaikuReadme
- Frontend
- Backend
- Deployment
- Build Process
- π License
- π Acknowledgments
- Contributors β¨
- π¨ Customizable themes:
catppuccin_mocha,dracula,cyberpunk, and more - π§± Layouts:
vertical,horizontal, andcompact - π€ Font options:
Fira Code,Roboto,JetBrains Mono, and more - π Embeddable: Drop into any README with one line
- π‘ Automatically updated: Hourly haiku refresh (via GitHub Actions)
- π Mobile-friendly frontend for on-the-go customization
- π€ Open source: Add your own templates, themes, or words!
Embed this in your GitHub README:
| Parameter | Description | Options | Default |
|---|---|---|---|
theme |
Color scheme | catppuccin_mocha, dark, dracula, nord, tokyo_night, gruvbox_dark, solarized_dark, cyberpunk, velvet_dusk, solar_flare |
catppuccin_mocha |
type |
Layout style | vertical, horizontal, compact |
vertical |
border |
Show border | true, false |
true |
font |
Font family | Fira Code, Roboto, Inconsolata, Arial, Courier New, Comic Sans MS, Lobster, Oswald, Indie Flower, Impact, JetBrains Mono |
Fira Code |
-
Dracula theme, horizontal layout, no border:

-
Cyberpunk theme, compact layout with custom font:

-
Custom font example:

| Theme | Preview |
|---|---|
| catppuccin_mocha | |
| dracula | |
| cyberpunk |
Explore more themes at HaikuReadme Web
Embed this in your GitHub README:
- Node.js (v16 or higher)
- npm (v8 or higher)
- Vercel CLI (for deployment)
# Clone the repository
git clone https://github.com/chinmay29hub/haiku-readme.git
# Navigate to project
cd haiku-readme
# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd ../frontend
npm install
# Come back to root directory
cd ..
# Build the project
npm run build
# Deploy to Vercel
vercelUpdate your README with your deployed URL.
The haiku SVG updates every hour using a GitHub Action.
This ensures fresh content and bypasses Vercel's response caching.
name: Haiku Generator
on:
push:
branches:
- main
schedule:
- cron: '0 * * * *' # Every hour
workflow_dispatch:
permissions:
contents: write
jobs:
update-readme:
runs-on: ubuntu-latest
steps:
- name: Checkout the code
uses: actions/checkout@v3
- name: Update README with Random Haiku
uses: chinmay29hub/haiku-readme@v1See the workflow file in .github/workflows/update-readme.yml.
# Start backend
cd backend
npm start
# Start frontend
cd ../frontend
npm run devOr use one command to run both:
npm run devAPI will be available at:
http://localhost:3000/api?theme=catppuccin_mocha&type=vertical&border=true
Create a .env file in the frontend directory:
For local dev:
VITE_API_URL=http://localhost:3000
We welcome contributions from everyone! Check out the CONTRIBUTING.md to get started.
- Add new themes or layouts
- Expand word sets and haiku templates
- Improve UI/UX (animations, responsiveness, accessibility)
- Refactor backend or add tests
Before contributing, please read our Code of Conduct to ensure a respectful community experience.
- Issues β Bug reports & feature requests
- Discussions β Ideas and feedback
- Code of Conduct β Be kind and inclusive
-
React
- Description: A JavaScript library for building user interfaces using components.
- Documentation: https://react.dev/
-
Vite
- Description: A modern frontend build tool that provides fast development and optimized builds.
- Documentation: https://vitejs.dev/
-
Node.js
- Description: A JavaScript runtime for building scalable network applications.
- Documentation: https://nodejs.org/en/docs/
-
Nodemon
- Description: A tool that helps develop Node.js applications by automatically restarting the server when file changes are detected.
- Documentation: https://nodemon.io/
- Vercel
- Description: A platform for frontend developers to deploy websites and serverless functions.
- Documentation: https://vercel.com/docs
- npm
- Description: A package manager for JavaScript that allows you to install, share, and manage dependencies.
- Documentation: https://docs.npmjs.com/
Licensed under the MIT License.
- Inspired by devs who mix poetry and code
- Color palettes from Catppuccin
- Powered by Vercel, React, Express
Thanks goes to these wonderful people: