Skip to content
echowavesPublic

About

Incognito photos and short videos, anonymous posting.

Topics

Resources

Stars

38 stars

Watchers

2 watching

Forks

Latest commit

 

History

2,194 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WiSaw - "What I Saw Today"

Version Platform License React Native Expo

Minimalistic social sharing β€’ Incognito pics β€’ Anonymous posting

🌟 Overview

WiSaw is a location-based, anonymous social sharing app that lets you capture and share moments without the complexity of traditional social media. No registration, no profiles, no followers - just pure, location-relevant content sharing.

✨ Key Features

  • 🚫 No Registration Required - Open the app and start sharing immediately
  • πŸ“ Location-Based Feed - See what's happening around you right now
  • 🎭 Anonymous Sharing - Share without revealing your identity
  • πŸ—‘οΈ Community Moderation - Delete inappropriate content to improve quality for everyone
  • πŸ€– AI Image Recognition - Automatic content descriptions using AI
  • πŸ’¬ Real-time Comments - Engage with posts through anonymous comments
  • πŸ”— Deep Linking - Share specific photos and friend invitations
  • πŸ“± Cross-Platform - Available on iOS, Android, and Web

πŸ“± Download

Download on the App Store
Get it on Google Play

🌐 Web Version: wisaw.com

πŸ› οΈ Tech Stack

Frontend

  • React Native (0.79.4) - Cross-platform mobile development
  • Expo (53.0.12) - Development platform and build system
  • Expo Router (5.1.0) - File-based routing system
  • TypeScript - Type-safe development
  • Jotai (2.8.4) - State management

Backend Integration

  • Apollo Client (3.9.7) - GraphQL client with caching
  • GraphQL (16.8.1) - API query language
  • WebSocket Subscriptions - Real-time updates

UI/UX

  • React Native Elements - UI component library
  • React Navigation - Navigation system
  • Expo Image - Optimized image handling
  • React Native Reanimated - Smooth animations

Device Features

  • Camera & Photo Library - Image capture and storage
  • Location Services - GPS-based content filtering
  • Push Notifications - Real-time alerts
  • Deep Linking - Share content and friend invitations

πŸ—οΈ Architecture

Project Structure

WiSaw/
β”œβ”€β”€ app/                    # Expo Router app directory
β”‚   β”œβ”€β”€ (drawer)/          # Drawer navigation layout
β”‚   β”‚   β”œβ”€β”€ (tabs)/        # Bottom tabs navigation
β”‚   β”‚   β”‚   β”œβ”€β”€ index.tsx  # Main feed screen
β”‚   β”‚   β”‚   β”œβ”€β”€ chat.tsx   # Chat/messaging screen
β”‚   β”‚   β”‚   └── photos/    # Photo-related screens
β”‚   β”‚   β”œβ”€β”€ friends.tsx    # Friends management
β”‚   β”‚   └── feedback.tsx   # User feedback
β”‚   └── _layout.tsx        # Root layout
β”œβ”€β”€ src/                   # Source code
β”‚   β”œβ”€β”€ components/        # Reusable components
β”‚   β”œβ”€β”€ screens/           # Screen components (legacy)
β”‚   β”œβ”€β”€ utils/             # Utility functions
β”‚   β”œβ”€β”€ hooks/             # Custom React hooks
β”‚   └── state.js           # Global state management
β”œβ”€β”€ assets/                # Images, icons, splash screens
β”œβ”€β”€ docs/                  # Documentation and guides
└── public/                # Static web assets

Key Features Implementation

πŸ”§ Navigation System

  • Expo Router with file-based routing
  • Drawer Navigation for main app sections
  • Tab Navigation for primary features
  • Modal Navigation for overlays and forms

🎨 UI/UX Enhancements

  • Status Bar Handling - Platform-specific status bar management
  • Safe Area Support - Proper handling of device safe areas
  • Responsive Design - Adapts to different screen sizes
  • Loading States - User feedback during operations

πŸ”„ State Management

  • Jotai for lightweight state management
  • Apollo Client Cache for GraphQL data
  • Local Storage for offline data persistence

πŸ” Privacy & Security

  • Anonymous Posting - No user identification required
  • Location Privacy - Approximate location sharing only
  • Content Moderation - Community-driven content filtering

πŸš€ Getting Started

Prerequisites

  • Node.js (18+)
  • npm or yarn
  • Expo CLI
  • iOS Simulator (for iOS development)
  • Android Studio/Emulator (for Android development)

Installation

  1. Clone the repository

    git clone https://github.com/echowaves/WiSaw.git
    cd WiSaw
  2. Install dependencies

    npm install
  3. Set up environment variables

    # Create .env file with your API endpoints
    API_URI=your_graphql_endpoint
    REALTIME_API_URI=your_websocket_endpoint
    API_KEY=your_api_key
    PRIVATE_IMG_HOST=your_image_host
  4. Start the development server

    npm start

Development Scripts

# Start Expo development server
npm start

# Run on iOS simulator
npm run ios

# Run on Android emulator
npm run android

# Build for production
npm run build

# Deploy to production
npm run publish:prod

# Clear cache and reset
npm run clear
npm run reset:simulator

πŸ“‹ Version Management

The app uses a centralized version management system:

  • Version: Defined in package.json and imported to app.config.js
  • Build Numbers: Automatically synced across iOS and Android
  • Single Source of Truth: All version info in package.json

To update the app version:

  1. Update version, buildNumber, and versionCode in package.json
  2. Changes automatically propagate throughout the app

πŸ”§ Configuration

App Configuration

The app uses app.config.js for Expo configuration:

  • Platform-specific settings
  • Deep linking configuration
  • Push notification setup
  • Build properties

Environment Setup

  • Development: Uses Expo development server
  • Production: Built with EAS (Expo Application Services)
  • Web: Deployed as PWA

πŸ“– Documentation

Developer Guides

Feature Documentation

🀝 Contributing

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

Development Guidelines

  • Follow TypeScript best practices
  • Use Expo Router for navigation
  • Implement proper error handling
  • Add documentation for new features
  • Test on both iOS and Android

πŸ“ž Support

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments


Made with ❀️ by Echowaves Corp.

Experience authentic, location-based social sharing

πŸ“± Screenshots

Main Feed

Main feed showing nearby photos

Photo Search

Search and browse photos by relevance

Photo Details

Detailed photo view with AI descriptions

AI Recognition

AI-powered image recognition and tagging

Comments

Anonymous commenting system

Navigation Menu

App navigation and features

About

Incognito photos and short videos, anonymous posting.

Topics

Resources

Stars

38 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages