A sleek, mobile-first travel booking web application with a modern dark mode UI, built with vanilla HTML, CSS, and JavaScript. Designed exclusively for 375px mobile viewport with beautiful neumorphic design elements.
- Mobile-Only Focus: Optimized for 375px width, centered on larger screens
- Dark Mode Support: Beautiful dark theme with smooth transitions
- Neumorphic UI: Soft shadows and modern card designs
- Smooth Animations: Micro-interactions and page transitions
- Smart Search: Autocomplete destination search with popular suggestions
- Date Selection: Custom date picker with modern UI
- Guest Management: Interactive stepper controls for adults/children
- Hotel Discovery: Featured hotels carousel with swipe support
- Advanced Filters: Price range, star ratings, and amenities
- Saved Hotels: Favorite hotels with localStorage persistence
- User Profile: Customizable preferences including currency (USD/EUR/GBP)
- Pure Vanilla Stack: No frameworks, just HTML, CSS, and JavaScript
- Performance Optimized: Pre-rendered sections with instant navigation
- Responsive Animations: 140ms transitions with cubic-bezier easing
- LocalStorage Integration: Persistent user preferences and saved items
- Accessibility: ARIA labels and keyboard navigation support
- Modern web browser (Chrome, Firefox, Safari, Edge)
- No build tools or dependencies required!
- Clone the repository:
git clone https://github.com/mutlukurt/travelapp.git
cd travelapp
- Open the app:
open index.html
# or simply double-click index.html
That's it! The app runs entirely in the browser with no server required.
--bg-cream: #F5F5F5;
--card: #FFFFFF;
--text: #1A1D1F;
--accent: #9ACD32;
--bg-cream: #0E1113;
--card: #15191C;
--text: #E7ECF1;
--accent: #98D96F;
- Font Family: Inter
- Sizes: 28px (display), 22px (h1), 18px (h2), 14px (body), 12px (caption)
- Weights: 400 (regular), 500 (medium), 600 (semibold), 700 (bold)
travelapp/
├── index.html # Main HTML structure
├── styles.css # All styling with dark mode support
├── app.js # JavaScript functionality
├── assets/ # Screenshots and images
└── README.md # Project documentation
- Fixed 375px width container
- No responsive breakpoints
- Optimized for touch interactions
- Native-like navigation with tab bar
- Single-page application with instant route switching
- Pre-rendered sections with
hidden
attribute toggling - Debounced autocomplete (120ms)
- Lazy loading for search results
- CSS animations using GPU-accelerated properties
- Chrome 90+
- Firefox 88+
- Safari 14+
- Edge 90+
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is open source and available under the MIT License.
Mutlu Kurt
- GitHub: @mutlukurt
- Design inspired by modern travel booking platforms
- Icons from inline SVG for better performance
- Images from Unsplash for demo content
Made with ❤️ using vanilla JavaScript