|
|
--- |
|
|
title: Birthday Greeting Card Generator |
|
|
emoji: π |
|
|
colorFrom: red |
|
|
colorTo: yellow |
|
|
sdk: gradio |
|
|
sdk_version: 5.49.1 |
|
|
app_file: app.py |
|
|
pinned: true |
|
|
license: mit |
|
|
short_description: Create beautifully personalized cards for ages 1 to 100 |
|
|
tags: |
|
|
- building-mcp-track-creative |
|
|
- birthday-greeeting-card |
|
|
- mcp-1st-birthday |
|
|
- gradio |
|
|
--- |
|
|
|
|
|
# π Birthday Greeting Card Generator |
|
|
|
|
|
**Create beautifully personalized cards for ages 1 to 100 using AI** |
|
|
|
|
|
--- |
|
|
|
|
|
### π Purpose |
|
|
|
|
|
This app helps create personalized birthday cards by combining many parameeters like recepient type, tone, theme, age, and an interactive Fabric.js editor β allowing anyone to create, customize, and download a beautiful birthday card effortlessly. |
|
|
|
|
|
[Watch Birthday Greeting Card Generator in action](https://www.loom.com/share/643590088f2d4e3f9d2e805ce368fa0f) |
|
|
|
|
|
[Social Meedia Post on X](https://x.com/tejasashinde/status/1994716784080068750) |
|
|
|
|
|
--- |
|
|
|
|
|
### β¨ Key Features of Birthday Greeting Card Generator |
|
|
|
|
|
* π― Personalized birthday wish selection based on **tone**, **theme**, **age**, and **recipient type** from [https://huggingface.co/datasets/tejasashinde/birthday_quotes_1_to_100](https://huggingface.co/datasets/tejasashinde/birthday_quotes_1_to_100) dataset |
|
|
* πΌοΈ AI-generated background images using **Flux Dev**, matched to the selected parameters |
|
|
* βοΈ Fully Interactive editable greeting card canvas using **Fabric.js**, allowing drag, resize, modify text, and add extra elements |
|
|
* π₯ One-click download of the final birthday card as a **JPEG image** |
|
|
|
|
|
--- |
|
|
|
|
|
### π§ Models, Dataset, and APIs Used |
|
|
|
|
|
* **Birthday Quote 1 to 100 Dataset:** |
|
|
Custom curated dataset taken from [https://huggingface.co/datasets/tejasashinde/birthday_quotes_1_to_100](https://huggingface.co/datasets/tejasashinde/birthday_quotes_1_to_100) is used to match the most relevant greeting based on user-selected parameters. |
|
|
|
|
|
* **Image Generation Model:** |
|
|
**Flux Dev** used to generate themed background images for the greeting card via [Nebius API - Token factory](https://tokenfactory.nebius.com/) |
|
|
|
|
|
* **Canvas Editor:** |
|
|
Integrated **Fabric.js** for interactive, element-wise editing inside the canvas for full customization. |
|
|
|
|
|
* **Personalized Wish:** |
|
|
Generate short personalized wish using GPT-OSS/120B model via [Nebius API - Token factory](https://tokenfactory.nebius.com/) |
|
|
|
|
|
--- |
|
|
|
|
|
### π οΈ Core Functionality Overview |
|
|
|
|
|
1. User enters **name**, **age** and selects **tone**, **theme**, and **recipient type**. |
|
|
2. The system fetches the **best-matching birthday wish_text** from the Hugging Face dataset. |
|
|
3. Flux Dev generates a **personalized background image** using the same parameters and gpt-oss/120b model generates a short personalized wish using same parameters. |
|
|
4. The matching **wish_text** + **background image** are loaded into a **Fabric.js canvas** for full customization. |
|
|
5. User downloads the final, edited card as a **JPEG**. |
|
|
6. Can repeat the same process via MCP Server. |
|
|
|
|
|
--- |
|
|
|
|
|
### π§ͺ Steps to run the app: |
|
|
|
|
|
1) Install dependencies after clonning with: |
|
|
```bash |
|
|
pip install -r requirements.txt |
|
|
``` |
|
|
2) Put your Nebius API token in .env |
|
|
3) Run the app with: |
|
|
```bash |
|
|
python app.py |
|
|
``` |
|
|
|
|
|
Made with β€οΈ using **Gradio, GPT-OSS/120B, Nebius API** for [MCP 1st Birthday](https://huggingface.co/MCP-1st-Birthday) on [Hugging Face](https://huggingface.co)π€ |
|
|
|
|
|
Created by [tejasashinde](https://huggingface.co/tejasashinde) |