Skip to content
daveweinbergerPublic

About

TravelPro App

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

11 Commits

Folders and files

Repository files navigation

TravelPro

An advanced travel planning application for experienced travelers, built with React and Chakra UI with an iOS-inspired design system.

Features

πŸ—“οΈ Trip Management

  • Calendar View: Visual calendar showing all trips with country flags and event icons
  • List View: Detailed chronological view of all events grouped by date and trip
  • Multi-Trip Support: Manage multiple trips simultaneously with tags and filters
  • Smart Alerts: Automatic gap detection in your itinerary with suggestions

πŸ“„ Document Import

  • Multiple Import Methods:
    • Drag-and-drop file upload (PDF, PNG, JPG, HEIC)
    • Email forwarding to dedicated import address
    • Manual entry for flights, hotels, cars, and activities
  • AI-Powered Extraction: Automatically extracts key information from travel documents
  • Review & Confirm: Review extracted data before adding to your trip

πŸ”” Alerts & Notifications

  • Gap Detection: Identifies schedule gaps and suggests activities
  • Priority Levels: High, medium, and low priority alerts
  • Smart Reminders: Pre-trip preparation reminders (bank notifications, offline maps, etc.)
  • Smart Insights: AI-powered recommendations based on your itinerary
  • Notification Bell: Click bell icon to jump directly to alerts
  • Dynamic Badge: Shows count of active gaps

πŸ” Search

  • Global Search: Search across all trips, events, locations, and confirmations
  • Real-time Results: Instant search as you type
  • Smart Navigation: Click results to jump to specific dates/events
  • Search Tips: Helpful suggestions for effective searching

πŸ’‘ Recommendations

  • Personalized Suggestions: Based on your interests and travel style
  • Gap Filling: Suggestions to fill schedule gaps
  • Location-Based: Attractions, restaurants, and activities by location
  • Pre-Trip Preparation: Visa requirements, travel tips, and money-saving suggestions
  • Local Tips: Practical information about transport, hours, and local customs

🎨 Design Features

  • iOS-Inspired Interface: Clean, modern design with SF Pro fonts
  • Dark Mode Support: Full dark mode with proper contrast and readability
  • Smooth Transitions: 0.2-0.3s color transitions for seamless mode switching
  • Responsive Design: Optimized for mobile, tablet, and desktop
  • Polished Animations: Icon hover effects and smooth interactions
  • Accessibility: WCAG-compliant with proper color contrast and keyboard navigation

🏷️ Advanced Tag Management

  • Custom Emojis: Choose from 48+ emojis for visual identification
  • Color Schemes: 10 color options for tag categorization
  • Edit & Delete: Full CRUD operations on tags
  • Multi-Select Filtering: Filter trips by multiple tags simultaneously
  • Trip Assignment: Easy drag-and-drop tag management

Tech Stack

  • React 19.2.0 - Modern React with hooks
  • Chakra UI 3.2.2 - Component library with iOS-inspired theming
  • React Router 7.0.2 - Client-side routing and navigation
  • date-fns 4.1.0 - Modern date manipulation and formatting
  • Framer Motion 11.15.0 - Smooth animations and transitions
  • Emotion - CSS-in-JS styling solution

Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn

Installation

  1. Clone the repository:
git clone <repository-url>
cd travelpro
  1. Install dependencies:
npm install
  1. Start the development server:
npm start

The app will open at http://localhost:3000

Available Scripts

  • npm start - Runs the app in development mode
  • npm build - Builds the app for production
  • npm test - Runs the test suite
  • npm eject - Ejects from Create React App (one-way operation)

Project Structure

travelpro/
β”œβ”€β”€ public/
β”‚   └── index.html
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ HomeScreen.js          # Main dashboard with tabs
β”‚   β”‚   β”œβ”€β”€ Calendar.js            # Interactive calendar view
β”‚   β”‚   β”œβ”€β”€ ListView.js            # Chronological list view
β”‚   β”‚   β”œβ”€β”€ TripDetails.js         # Event details display
β”‚   β”‚   β”œβ”€β”€ AlertsView.js          # Alerts and notifications
β”‚   β”‚   β”œβ”€β”€ ImportPlans.js         # Document import flow
β”‚   β”‚   β”œβ”€β”€ ImportProcessing.js    # Processing screen
β”‚   β”‚   β”œβ”€β”€ ImportReview.js        # Review extracted data
β”‚   β”‚   β”œβ”€β”€ TripsOverview.js       # All trips management
β”‚   β”‚   β”œβ”€β”€ GapDetail.js           # Gap analysis with suggestions
β”‚   β”‚   β”œβ”€β”€ Recommendations.js     # Smart recommendations
β”‚   β”‚   └── Footer.js              # Footer with dark mode toggle
β”‚   β”œβ”€β”€ theme/
β”‚   β”‚   └── index.js               # Chakra UI theme configuration
β”‚   β”œβ”€β”€ styles/
β”‚   β”‚   └── *.css                  # Legacy component styles
β”‚   β”œβ”€β”€ App.js                     # Main app with routing
β”‚   └── index.js                   # Entry point with providers
β”œβ”€β”€ Assets/
β”‚   └── TRAVELPRO_WIREFRAMES-*.md  # Design documentation
β”œβ”€β”€ DESIGN.md                       # Design system documentation
β”œβ”€β”€ MIGRATION.md                    # Migration progress tracking
β”œβ”€β”€ package.json
└── README.md

Key Features Explained

Calendar View

  • Interactive calendar showing all trips
  • Click dates to see detailed events
  • Visual indicators for alerts and multiple trips
  • Country flags for easy trip identification

Import Flow

  1. Select trip or create new one
  2. Upload documents, forward emails, or enter manually
  3. AI processes and extracts information
  4. Review and confirm extracted data
  5. Events automatically added to calendar

Smart Recommendations

  • Analyzes your itinerary for gaps
  • Suggests activities based on interests
  • Provides location-specific recommendations
  • Offers pre-trip preparation tips
  • Includes local insights and practical information

Current Status

TravelPro is in active development with a fully functional UI and comprehensive interactive features. The application currently features:

  • βœ… Complete iOS-inspired design system with Chakra UI
  • βœ… Full dark mode support with smooth transitions
  • βœ… Responsive design for mobile, tablet, and desktop
  • βœ… Interactive calendar and list views
  • βœ… Multi-trip management with filtering
  • βœ… Gap detection and dismissal system
  • βœ… Global search functionality
  • βœ… Event details modal with edit/delete/attachments
  • βœ… Advanced tag management with emojis and colors
  • βœ… Trip editing and management
  • βœ… Context-based state management
  • βœ… Document import flow UI
  • βœ… Recommendations interface

Interactive Features

Fully Functional

  • βœ… View and edit event details
  • βœ… Add/remove attachments to events
  • βœ… Filter trips by name and tags
  • βœ… Create, edit, and delete tags
  • βœ… Dismiss gap alerts
  • βœ… Search across all content
  • βœ… Edit trip information
  • βœ… Duplicate, export, archive trips
  • βœ… Navigate between views
  • βœ… Dark mode toggle with animations

Coming Soon

  • Backend API and database integration
  • Real AI/ML integration for document extraction
  • Integration with booking platforms (Expedia, Booking.com, etc.)
  • Collaborative trip planning with shared access
  • Offline mode support with service workers
  • Native mobile app (React Native)
  • Real-time weather integration
  • Budget tracking and expense management
  • Packing list generator with smart suggestions
  • Flight price tracking and alerts

Design System

TravelPro uses a custom iOS-inspired design system built on Chakra UI:

Theme Features

  • SF Pro Font Family: System fonts matching iOS design
  • iOS Blue Color Palette: Primary brand color (#007AFF) with semantic variants
  • Rounded Corners: 12px border radius for modern iOS feel
  • Consistent Spacing: 8px base unit for harmonious layouts
  • Dark Mode: Complete dark mode support with proper contrast ratios

Design Principles

  1. Unified Multi-Trip Organization: Single view for all trips with smart filtering
  2. Enhanced Gap Detection: Visual timeline with priority-based alerts
  3. Tag-Based Filtering: Organize trips by multiple dimensions
  4. Context-Aware Recommendations: Smart suggestions based on location and interests
  5. Accessible Design: WCAG-compliant with proper color contrast and keyboard navigation
  6. Progressive Disclosure: Show essential info first, details on demand

For detailed design documentation, see DESIGN.md

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

When contributing, please:

  • Follow the design system guidelines in DESIGN.md
  • Maintain accessibility standards
  • Write clear commit messages
  • Test on multiple screen sizes

License

This project is licensed under the ISC License.

Contact

For questions or feedback, please contact: developer@travelpro.app

About

TravelPro App

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages