@titas_mallick/wedding-site-gen 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +53 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -74,6 +74,59 @@ npx @titas_mallick/wedding-site-gen
74
74
  - *Logic*: Uses a `setInterval` to calculate time until the `weddingStart` date.
75
75
  - **`OurStory.tsx`**: The timeline component showing the couple's history.
76
76
 
77
+ ## 🧠 Deep-Dive: How it Works
78
+
79
+ ### 1. AI Wedding Concierge (`ConciergeBot.tsx`)
80
+ The floating assistant uses **Google Gemini 2.5-flash**.
81
+ - **Personality**: Defined in the `systemInstruction` constant. It's programmed to be a warm, respectful Indian wedding host.
82
+ - **Customization**: To update facts (like venue changes), simply edit the `Key Info` section inside the `systemInstruction` in `components/ConciergeBot.tsx`.
83
+
84
+ ### 2. Personalized Invitations (`/app/invitation/[slug]`)
85
+ This route handles dynamic guest experiences.
86
+ - **Dynamic Content**: Based on the `slug` (guest ID), it fetches personalized data from Firestore.
87
+ - **Smart Bengali Translation**: Uses Gemini to translate invitation details into formal Bengali when the user clicks "বাংলায় দেখুন".
88
+
89
+ ### 3. Digital Guestbook (`/app/guestbook`)
90
+ - **Image Processing**: Before uploading, photos are client-side resized and compressed (JPEG 70% quality) to ensure fast uploads even on mobile networks.
91
+ - **Storage**: Images go to Cloudinary, and the resulting URL is saved to Firestore.
92
+
93
+ ### 4. Sentiment Wall (`/app/sagun`)
94
+ - **Collective Blessing**: When guests leave wishes, Gemini periodically summarizes the latest messages into a single "poetic paragraph" that updates live on the "Sentiment Wall."
95
+
96
+ ---
97
+
98
+ ## 📊 Database Structure (Firestore)
99
+
100
+ To make the site functional, create these collections in Firestore:
101
+
102
+ ### `invitation` (Collection)
103
+ Each document ID should be a unique `slug` (e.g., `rahul-wedding`).
104
+ ```json
105
+ {
106
+ "name": "Rahul & Priya",
107
+ "invitedGuests": 2,
108
+ "relation": "Close Friend",
109
+ "familySide": "groom",
110
+ "invitedFor": ["wedding", "reception"]
111
+ }
112
+ ```
113
+
114
+ ### `rsvps` (Collection)
115
+ Automatically populated when guests confirm attendance.
116
+ ```json
117
+ {
118
+ "guestId": "rahul-wedding",
119
+ "attending": "yes",
120
+ "guests": 2,
121
+ "food": "non-veg",
122
+ "note": "Looking forward to it!",
123
+ "timestamp": "serverTime"
124
+ }
125
+ ```
126
+
127
+ ### `guestbook` & `wishes` (Collections)
128
+ Store guest memories and text blessings respectively.
129
+
77
130
  ---
78
131
 
79
132
  ## 🎨 Customization & Development
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@titas_mallick/wedding-site-gen",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "bin": {
5
5
  "wedding-gen": "./cli.mjs"
6
6
  },