Welcome to Euro Travel, your ultimate destination for exploring Europe's finest tourist spots!
Euro Travel is a tourism management website focusing on six different countries in Europe: France, Italy, Spain, England, Netherlands, and Switzerland. The website provides a comprehensive platform for users to discover tourist spots, add new spots, manage their lists, and explore various destinations across Europe.
- Navbar: Easy navigation with options to access Home, All Tourist Spots, Add Tourist Spot, My List, Login, and Register.
- Authentication: Secure login and registration using email and password authentication. Social media login options are also available.
- Home Page: Features a banner/slider, tourist spots section, countries section, extra sections, and a footer.
- Banner: Engaging slider with meaningful information about tourist spots.
- Tourist Spots Section: Displays cards for tourist spots with a "View Details" button.
- Extra Sections: Includes two additional relevant sections for enhanced user experience.
- Add Tourist Spot Page: Allows users to add new tourist spots with detailed information.
- All Tourist Spot Page: Displays all tourist spots added by users, with sorting functionality based on average cost.
- View Details Page: Provides detailed information about each tourist spot.
- My List Page: Allows users to view and manage their added tourist spots.
- Update and Delete: Options to update or delete tourist spot information with confirmation prompts.
- Footer: Includes website information, copyright, contact details, and social media links.
- 404 Page: Custom page for handling not found errors.
- Loading Spinner: Displays a loading spinner when data is in a loading state.
- Dark/Light Theme Toggle: Allows users to switch between dark and light themes for the home page.
- Challenges Requirements: Implemented additional features such as country information, country-specific tourist spot pages, and integration of React packages.
- React.js
- Firebase Authentication
- React Router
- Tailwind
- Netlify for deployment
- @emotion/react
- @emotion/styled
- @heroicons/react
- @material-tailwind/react
- @mui/material
- @mui/x-date-pickers
- animate.css
- aos
- dayjs
- firebase
- localforage
- lottie-react
- prop-types
- react
- react-awesome-reveal
- react-dom
- react-icons
- react-leaflet
- react-loader-spinner
- react-router-dom
- react-simple-typewriter
- react-toastify
- sweetalert
- swiper
To run this project locally, follow these steps:
- Clone the repository.
- Install dependencies using
npm install
. - Set up Firebase for authentication.
- Run the application using
npx vite
.
This project is licensed under the MIT License.