{"id":30196348,"url":"https://github.com/misfofficial/danafly-clint","last_synced_at":"2026-04-06T01:33:15.268Z","repository":{"id":308880958,"uuid":"1022731521","full_name":"MISFOfficial/DanaFly-clint","owner":"MISFOfficial","description":"DanaFly is a modern, full-featured travel and tourism management platform designed to connect tourists with verified tour guides, explore curated travel packages, book unforgettable trips, and share experiences through stories and photos. With secure user authentication, real-time bookings, role-based dashboards, and Stripe-powered payments.","archived":false,"fork":false,"pushed_at":"2025-08-08T11:39:35.000Z","size":2111,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-08T13:29:40.322Z","etag":null,"topics":["axios","dontenv","express","firebase","framer-motion","jwt","mongodb","mongodb-atlas","nodejs","npm","react","react-router","tailwindcss","tans"],"latest_commit_sha":null,"homepage":"https://danafly-acbb0.web.app/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MISFOfficial.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2025-07-19T17:48:17.000Z","updated_at":"2025-08-08T11:39:39.000Z","dependencies_parsed_at":"2025-08-08T13:29:42.900Z","dependency_job_id":"87048a2a-4f3e-4056-89dd-4b38aca4fef0","html_url":"https://github.com/MISFOfficial/DanaFly-clint","commit_stats":null,"previous_names":["misfofficial/danafly-clint"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/MISFOfficial/DanaFly-clint","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISFOfficial%2FDanaFly-clint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISFOfficial%2FDanaFly-clint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISFOfficial%2FDanaFly-clint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISFOfficial%2FDanaFly-clint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MISFOfficial","download_url":"https://codeload.github.com/MISFOfficial/DanaFly-clint/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISFOfficial%2FDanaFly-clint/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270183606,"owners_count":24541341,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-13T02:00:09.904Z","response_time":66,"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":["axios","dontenv","express","firebase","framer-motion","jwt","mongodb","mongodb-atlas","nodejs","npm","react","react-router","tailwindcss","tans"],"created_at":"2025-08-13T05:18:12.550Z","updated_at":"2025-12-30T19:05:17.511Z","avatar_url":"https://github.com/MISFOfficial.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DanaFly\n\n## DanaFly is a modern, full-featured travel and tourism management platform designed to connect tourists with verified tour guides, explore curated travel packages, book unforgettable trips, and share experiences through stories and photos. With secure user authentication, real-time bookings, role-based dashboards, and Stripe-powered payments, DanaFly offers a seamless and personalized travel planning experience for both travelers and tour operators.\n\n## Live Site\n\n🔗 [DanaFly Live Site](https://danafly-acbb0.web.app)\n\n---\n\n## key Features\n\n### login and register:\n\nBy Creating and managing user can find the subsciptions as they want.\n🔐 User Authentication\n\n- Secure login/register with JWT tokens stored in cookies\n\n- Google Sign-In integration\n\n- Role-based access (Tourist, Tour Guide, Admin)\n\n### 🗺️ Tour Package Booking**\n\n- Explore detailed travel packages with images and pricing\n\n- Book tours with real-time availability\n\n- Integrated payment system via Stripe\n\n### 🧑‍💼 Tour Guide System**\n\n- Verified tour guides can list their services\n\n- Tourists can meet and book available guides\n\n- Guide profiles with ratings and reviews\n\n### 📸 Story \u0026 Photo Sharing**\n\n- Users can share travel stories and photo galleries\n\n- Latest images displayed on homepage\n\n- 'See More' gallery with full user contributions\n\n### 🧭 Dashboards for All Roles**\n\n- Tourist Dashboard: View bookings, payments, and saved trips\n\n- Guide Dashboard: Manage bookings, availability, and feedback\n\n- Admin Dashboard: Manage users, verify roles, and moderate content\n\n### 📧 Forgot Password Functionality**\n\n- Password reset via email using Firebase Auth\n\n- Toast notifications for success/failure feedback\n\n### 🧾 Cookie-Based JWT Auth**\n\n- Secure and persistent login sessions\n\n- Admin routes protected via custom middlewares and hooks\n\n### 📊 Admin Panel**\n\n- Role management (promote user to admin or guide)\n\n- View analytics, user stats, and content moderation\n\n### 🎨 Responsive \u0026 Modern UI**\n\n- Built with React + Tailwind CSS\n- Fully responsive for mobile and desktop users\n- Clean design, animations, and interactive elements\n\n---\n\n## Tech Stack\n\n#### Frontend**:\n- React.js – Component-based UI development\n- Tailwind CSS – Utility-first styling for responsive design\n- React Router – Client-side routing\n- Axios – HTTP client for API communication\n- React Hook Form – Form handling and validation\n- React Query (@tanstack/react-query) – Data fetching and caching\n- React Icons – Iconography\n- React Toastify – Notifications and alerts\n#### Authentication**:\n- Firebase Authentication – Email/password and Google OAuth\n- JWT (JSON Web Tokens) – Secure access tokens stored in HTTP-only cookies\n#### Backend**:\n- Node.js + Express.js – RESTful API development\n- MongoDB + Mongoose – NoSQL database for storing users, bookings, packages, etc.\n- Cookie-Parser – Middleware for parsing cookies\n- Dotenv – Environment variable management\n- Cors – Cross-origin resource sharing configuration\n#### Payment Integration**\n- Stripe API – Secure and easy-to-integrate payment processing\n\n#### Deployment**\n\n- Vercel – Hosting the frontend\n- Render / Railway / Vercel Functions – Hosting the backend API\n- MongoDB Atlas – Cloud-hosted MongoDB database\n\n### npm packages\n\n## Dependencies\n\nHere are the key dependencies required for this project:\n\n### **Dependencies**\n\n- `\"@react-hook/window-size\": \"^3.1.1\",`\n- `\"@stripe/react-stripe-js\": \"^3.7.0\",`\n- `\"@stripe/stripe-js\": \"^7.4.0\",`\n- `\"@tailwindcss/vite\": \"^4.1.11\",`\n- `\"@tanstack/react-query\": \"^5.82.0\",`\n- `\"axios\": \"^1.10.0\",`\n- `\"firebase\": \"^11.10.0\",`\n- `\"framer-motion\": \"^12.23.9\",`\n- `\"lottie-react\": \"^2.4.1\",`\n- `\"react\": \"^19.1.0\",`\n- `\"react-confetti\": \"^6.4.0\",`\n- `\"react-countup\": \"^6.5.3\",`\n- `\"react-datepicker\": \"^8.4.0\",`\n- `\"react-dom\": \"^19.1.0\",`\n- `\"react-hook-form\": \"^7.60.0\",`\n- `\"react-icons\": \"^5.5.0\",`\n- `\"react-intersection-observer\": \"^9.16.0\",`\n- `\"react-photo-album\": \"^3.1.0\",`\n- `\"react-router\": \"^7.6.3\",`\n- `\"react-select\": \"^5.10.2\",`\n- `\"react-share\": \"^5.2.2\",`\n- `\"react-tabs\": \"^6.1.0\",`\n- `\"react-toastify\": \"^11.0.5\",`\n- `\"react-use\": \"^17.6.0\",`\n- `\"sweetalert2\": \"^11.22.2\",`\n- `\"swiper\": \"^10.0.0\",`\n- `\"tailwindcss\": \"^4.1.11\",`\n- `\"yet-another-react-lightbox\": \"^3.24.0\"`\n\n### **Dev Dependencies**\n\n- `\"@tailwindcss/vite\": \"^4.1.8\",`\n- `\"axios\": \"^1.10.0\",`\n- `\"firebase\": \"^11.9.1\",`\n- `\"framer-motion\": \"^12.16.0\",`\n- `\"lottie-react\": \"^2.4.1\",`\n- `\"motion\": \"^12.16.0\",`\n- `\"react\": \"^19.1.0\",`\n- `\"react-datepicker\": \"^8.4.0\",`\n- `\"react-dom\": \"^19.1.0\",`\n- `\"react-icons\": \"^5.5.0\",`\n- `\"react-router\": \"^7.6.2\",`\n- `\"react-simple-typewriter\": \"^5.0.1\",`\n- `\"react-toastify\": \"^11.0.5\",`\n- `\"react-tooltip\": \"^5.29.0\",`\n- `\"sweetalert2\": \"^11.22.0\",`\n- `\"tailwindcss\": \"^4.1.8\"`\n\n### **Development Dependencies**\n\n- `\"@eslint/js\": \"^9.30.1\",`\n- `\"@types/react\": \"^19.1.8\",`\n- `\"@types/react-dom\": \"^19.1.6\",`\n- `\"@vitejs/plugin-react\": \"^4.6.0\",`\n- `\"daisyui\": \"^5.0.46\",`\n- `\"eslint\": \"^9.30.1\",`\n- `\"eslint-plugin-react-hooks\": \"^5.2.0\",`\n- `\"eslint-plugin-react-refresh\": \"^0.4.20\",`\n- `\"globals\": \"^16.3.0\",`\n- `\"vite\": \"^7.0.3\"`\n\nRefer to `package.json` for a complete list of dependencies.\n\n---\n\n## Installation\n\nTo set up the project locally, follow these steps:\n\n1. Clone the repository:\n\n   ```bash\n   git clone clint https://github.com/Programming-Hero-Web-Course4/b11a12-client-side-MISFOfficial\n   ```\n\n   ```bash\n   git clone server https://github.com/Programming-Hero-Web-Course4/b11a12-server-side-MISFOfficial\n   ```\n\n2. Navigate to the project directory:\n\n   ```bash\n   cd danafly\n   ```\n\n3. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n4. Start the development server:\n   ```bash\n   npm run dev\n   ```\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmisfofficial%2Fdanafly-clint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmisfofficial%2Fdanafly-clint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmisfofficial%2Fdanafly-clint/lists"}