Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

46 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ™๏ธ City Explorer

A Premium Mobile Guide for Local Events and Food Discovery

Featuring a sleek dark mode UI and premium user experience.

๐Ÿ“ฑ Demo

๐Ÿ“ธ Screenshots


Discover the best events and restaurants in your city with this beautiful React Native app built with Expo. Now featuring city-based filtering, social interactions, and a premium user experience.

๐Ÿ“ฑ Features

๐ŸŽจ Premium Dark UI

  • Modern Design: A sleek, modern dark theme (#121212) with high-contrast elements and premium card designs.
  • Smooth Animations: Custom transitions and micro-interactions for a polished feel.

๐Ÿ“ City-Based Discovery

  • Smart Filtering: Automatically filters content based on your selected city (Default: Pune, also supports New Delhi).
  • Local Content: Curated events and dining options specific to your location.

๐ŸŽ‰ Events Discovery

  • Browse & Filter: Find events by category (Music ๐ŸŽต, Art ๐ŸŽจ, Comedy ๏ฟฝ, etc.), price, and date.
  • Detailed Views: View event schedules, locations, and prices.
  • Social Actions: Check-in to events and share with friends.

๐Ÿฝ๏ธ Food & Dining

  • Restaurant Guide: Explore top-rated restaurants and cafes.
  • Advanced Filters: Filter by cuisine (๐Ÿ‡ฎ๐Ÿ‡น Italian, ๐Ÿฅ— Healthy, etc.), price range, and dietary preferences (Vegan, Gluten-Free).
  • Reviews: Read and write reviews for your favorite spots.

๐Ÿ‘ค User Profile & Saved Items

  • Authentication: Secure Login and Signup screens with premium styling.
  • Bookmarks: Save your favorite events and restaurants for quick access.
  • Reminders: Set reminders for upcoming events.

๐Ÿ› ๏ธ Built With

  • React Native - Mobile app framework
  • Expo - Development platform and tools
  • React Navigation - Stack and Bottom Tab navigation
  • Context API - State management for Auth, Location, and Saved items
  • @expo/vector-icons - Beautiful icons including Ionicons
  • React Native Safe Area Context - Responsive layout handling

๐Ÿ“‹ Prerequisites

Before running this app, make sure you have:

  • Node.js (v14 or later)
  • npm or yarn
  • Expo CLI (npm install -g @expo/cli)
  • iOS Simulator (for Mac) or Android Emulator
  • Expo Go app (for physical device testing)

๐Ÿš€ Getting Started

Installation

  1. Clone the repository

    git clone https://github.com/nyxsky404/City_Explorer.git
    cd City_Explorer
  2. Install dependencies

    npm install
  3. Start the development server

    npx expo start

Running the App

On iOS Simulator:

npx expo start --ios

On Android Emulator:

npx expo start --android

On Physical Device:

  1. Install Expo Go from App Store/Play Store
  2. Scan the QR code from the terminal
  3. The app will load on your device

๐Ÿ“ Project Structure

City_Explorer/
โ”œโ”€โ”€ App.js                 # Main app entry & Navigation setup
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ components/        # Reusable UI components
โ”‚   โ”‚   โ”œโ”€โ”€ AddReviewModal.js   # Modal for adding reviews
โ”‚   โ”‚   โ”œโ”€โ”€ CategoryFilter.js   # Horizontal category scroll
โ”‚   โ”‚   โ”œโ”€โ”€ FilterModal.js      # Detailed filter modal
โ”‚   โ”‚   โ”œโ”€โ”€ FilterSection.js    # Section within filter modal
โ”‚   โ”‚   โ”œโ”€โ”€ RatingInput.js      # Star rating input
โ”‚   โ”‚   โ”œโ”€โ”€ ReviewCard.js       # User review display card
โ”‚   โ”‚   โ”œโ”€โ”€ SearchBar.js        # Search and filter header
โ”‚   โ”‚   โ””โ”€โ”€ SocialActions.js    # Check-in and share buttons
โ”‚   โ”œโ”€โ”€ context/           # State Management
โ”‚   โ”‚   โ”œโ”€โ”€ AuthContext.js      # Authentication state
โ”‚   โ”‚   โ”œโ”€โ”€ LocationContext.js  # City detection and filtering
โ”‚   โ”‚   โ””โ”€โ”€ SavedContext.js     # Bookmarks management
โ”‚   โ”œโ”€โ”€ data/              # Mock Data
โ”‚   โ”‚   โ”œโ”€โ”€ eventsData.js       # Events data (Pune/Delhi)
โ”‚   โ”‚   โ”œโ”€โ”€ foodData.js         # Restaurant data
โ”‚   โ”‚   โ””โ”€โ”€ notificationsData.js # Notification templates
โ”‚   โ”œโ”€โ”€ screens/           # Application Screens
โ”‚   โ”‚   โ”œโ”€โ”€ EventsScreen.js     # Events listing
โ”‚   โ”‚   โ”œโ”€โ”€ FoodScreen.js       # Dining listing
โ”‚   โ”‚   โ”œโ”€โ”€ SavedScreen.js      # User profile & saved items
โ”‚   โ”‚   โ”œโ”€โ”€ LoginScreen.js      # Authentication
โ”‚   โ”‚   โ”œโ”€โ”€ SignupScreen.js     # Registration
โ”‚   โ”‚   โ”œโ”€โ”€ EventDetailScreen.js # Event details view
โ”‚   โ”‚   โ””โ”€โ”€ FoodDetailScreen.js  # Restaurant details view
โ”‚   โ””โ”€โ”€ utils/             # Helper Functions
โ”‚       โ”œโ”€โ”€ authService.js      # Auth logic (AsyncStorage)
โ”‚       โ”œโ”€โ”€ mapUtils.js         # Map linking utilities
โ”‚       โ””โ”€โ”€ socialService.js    # Review/Check-in logic
โ”œโ”€โ”€ assets/                # App icons and images
โ””โ”€โ”€ package.json           # Dependencies and scripts

๐ŸŽจ Screens

Events Screen

  • Header: Shows current city context.
  • Search & Filter: Powerful search bar with category chips and detailed filter modal.
  • List: Vertical list of premium event cards.

Food Screen

  • Dining Guide: curated list of restaurants.
  • Rich Data: Cuisine tags, price ratings (โ‚นโ‚นโ‚น), and average cost for two.

Profile (Saved) Screen

  • Personalized: View your saved items and check-in history.
  • Management: Remove items or set reminders directly from the card.

๐Ÿ“ฆ Dependencies

{
  "@expo/vector-icons": "^15.0.2",
  "@react-native-async-storage/async-storage": "^2.2.0",
  "@react-navigation/bottom-tabs": "^7.4.7",
  "@react-navigation/native": "^7.1.17",
  "@react-navigation/stack": "^7.4.8",
  "expo": "~54.0.10",
  "expo-location": "~19.0.7",
  "expo-status-bar": "~3.0.8",
  "react": "19.1.0",
  "react-native": "0.81.4",
  "react-native-maps": "1.20.1",
  "react-native-safe-area-context": "^5.6.1",
  "react-native-screens": "^4.16.0"
}

๏ฟฝ Future Enhancements

  • Real API integration (Backend)
  • Live Map View for venues
  • User-generated content (Photo uploads)
  • Push Notifications integration
  • Multi-city support (beyond Pune/Delhi)

๐Ÿ‘จโ€๐Ÿ’ป Development

Adding New Features

  1. New Screen: Add to src/screens/ and update App.js navigation stacks.
  2. New Data: Add mock data to src/data/ directory.
  3. Styling: Use the StyleSheet objects with the defined dark theme palette (#121212, #1E1E1E, #E23744).

๐Ÿ“„ License

This project is open source and available under the MIT License.

๐Ÿค Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“ž Contact

Developer: nyxsky404
Repository: https://github.com/nyxsky404/City_Explorer


โญ Star this repository if you found it helpful!

About

A Mobile Guide for Local Events and Food Discovery

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages