{"id":24333353,"url":"https://github.com/ericgitangu/interactive-birthday-card","last_synced_at":"2026-05-27T18:32:35.273Z","repository":{"id":269741234,"uuid":"908316734","full_name":"ericgitangu/interactive-birthday-card","owner":"ericgitangu","description":"Quick and dirty birthday project for my mom","archived":false,"fork":false,"pushed_at":"2025-01-22T00:51:27.000Z","size":15605,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-11T13:48:15.293Z","etag":null,"topics":["nextjs15","prisma","prisma-orm","tailwindcss","turbopack","upstash","vercel-blob"],"latest_commit_sha":null,"homepage":"https://deveric-birthdays.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ericgitangu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-25T18:00:52.000Z","updated_at":"2025-01-01T06:03:55.000Z","dependencies_parsed_at":"2025-03-11T13:57:22.027Z","dependency_job_id":null,"html_url":"https://github.com/ericgitangu/interactive-birthday-card","commit_stats":null,"previous_names":["ericgitangu/interactive-birthday-card"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ericgitangu/interactive-birthday-card","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericgitangu%2Finteractive-birthday-card","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericgitangu%2Finteractive-birthday-card/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericgitangu%2Finteractive-birthday-card/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericgitangu%2Finteractive-birthday-card/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ericgitangu","download_url":"https://codeload.github.com/ericgitangu/interactive-birthday-card/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericgitangu%2Finteractive-birthday-card/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33579665,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nextjs15","prisma","prisma-orm","tailwindcss","turbopack","upstash","vercel-blob"],"created_at":"2025-01-18T03:15:14.281Z","updated_at":"2026-05-27T18:32:35.261Z","avatar_url":"https://github.com/ericgitangu.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎉 Interactive Birthday Card Template 🎉\n![Logo](public/logo.png)\n\n\u003e A powerful, interactive, and shareable birthday card built with **Next.js**, **Tailwind CSS**, **Turbopack**, **upstash**, **vercel blob storage**, **redis**, **postgres** and **Prisma**.\n\n---\n\n## 🌟 **Features**\n\n### 🎂 **Personalized Cards**\nCreate unique cards with tailored visuals and messages.\n\n\u003eCredits to **Sora by OpenAI** for video generation.\n\n![Card](/public/images/landing.png)\n\n---\n\n### 🔥 **Interactive Candles**\nBlow out candles with dynamic animations based on the user's generation.\n\n![Candles](/public/images/candles.png)\n\n---\n\n### ✍️ **Signatures and Wishes**\nInvite friends to sign the card and leave heartfelt messages.\n\n![Signatures](/public/images/signatures.png)\n\n---\n\n### 🔗 **Shareable Links**\nEasily share personalized cards with secure OAuth-based authentication.\n\n![Shareable](/public/images/sharepage.png)\n\n---\n\n### 🖼️ **Gallery**\nShare personalized images in an auto-scroll gallery, performs manipulations to ensure the perfect fit.\nImages are drawn randomly through the app, dynamic image rendering based on the slug (params),\nServed from Vercel Blobs and optimized in addition to NextJS Image optimization for lazy performant loads.\n\n![Gallery](/public/images/gallery.png)\n\n---\n\n### 🛠 **Built With**\n- **Next.js**: For server-side rendering and the App Router.\n- **Turbopack**: For lightning-fast builds.\n- **Tailwind CSS**: For responsive and beautiful UI.\n- **Prisma**: For database ORM.\n- **NextAuth**: For secure OAuth.\n- **Upstash**: KV Store\n- **Vercel Storage Blob**: Store static assets -images acts as our CDN\n- **Redis**: Storage of hot key pair for user's birthday wishes\n\n![Next.js](https://img.icons8.com/color/96/000000/nextjs.png) ![Tailwind CSS](https://img.icons8.com/color/96/000000/tailwindcss.png) ![Prisma](https://img.icons8.com/color/96/000000/prisma-orm.png) ![NextAuth](https://img.icons8.com/color/96/000000/lock.png)\n\n---\n\n## 🚀 **Getting Started**\n\n### Prerequisites\n- ![Node.js](https://img.icons8.com/color/24/000000/nodejs.png) Node.js v18+\n- ![Redis](https://img.icons8.com/color/24/000000/redis.png) Upstash Redis account for storage.\n\n\n## License\n\nThis project is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International. See the [LICENSE](https://github.com/ericgitangu/interactive-birthday-card/blob/main/LICENSE.md) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fericgitangu%2Finteractive-birthday-card","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fericgitangu%2Finteractive-birthday-card","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fericgitangu%2Finteractive-birthday-card/lists"}