A web application that allows users to create and share virtual flower arrangements as digital gifts.
- Flower Selection: Choose from a variety of flower designs
- Interactive Canvas: Drag and drop flowers to create custom arrangements
- Sharing: Generate a unique code to share your creation with friends
- Authentication: Log in with Google or email/password
- Persistence: Save your designs to continue working on them later
- Frontend: HTML, CSS, JavaScript, Three.js for 3D rendering
- Backend: Node.js, Express
- Database: MongoDB
- Authentication: Passport.js with Google OAuth
- Deployment: Hosted via Ngrok
- Clone the repository
- Install dependencies:
npm install - Create a
.envfile with the following variables:PORT=3000 MONGO_URI=your_mongodb_connection_string GOOGLE_CLIENT_ID=your_google_client_id GOOGLE_CLIENT_SECRET=your_google_client_secret JWT_SECRET=your_jwt_secret BASE_URL=http://localhost:3000 (or your deployed URL) - Start the server:
npm start
app.js: Main application filepublic/: Static assetsjavascripts/: JavaScript files including Three.js implementationstylesheets/: CSS filestextures/: Flower textures and images
routes/: Express route handlersviews/: HTML templatesmodels/: Database modelspassport/: Authentication configuration
-
Share the link with friends so they can view your creation
- Add more flower varieties
- Implement a "bouquet template" feature
- Add ability to add text messages
- Improve mobile responsiveness
- Add social sharing options



