Skip to content

kelvincushman/247-App

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

96 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

247-App: On-Demand Trades Services Platform

React Native Expo License

Overview

247-App is a comprehensive on-demand trades services platform that connects homeowners and business owners with a network of qualified and verified tradespeople. Built with React Native and Expo, the platform provides a seamless mobile experience for both customers seeking services and tradespeople offering their expertise.

What We Do

We connect customers with trusted professionals across multiple trades:

  • Electricians - Electrical repairs, installations, and inspections
  • Plumbers - Plumbing repairs, installations, and emergency services
  • Locksmiths - Lock repairs, installations, and emergency lockout services
  • Gas Engineers - Gas appliance installations, repairs, and safety checks
  • Glazers - Window repairs, replacements, and installations

Key Features

For Customers

  • Easy Service Requests - Describe your problem with text and photos, select your trade category, and get matched with available tradespeople
  • Real-time Tracking - See your tradesperson's location and estimated arrival time
  • Secure Payments - Pay safely through the app with Stripe integration
  • Reviews & Ratings - Read reviews from other customers and rate your experience
  • Job History - Access all your past service requests and invoices
  • In-app Messaging - Communicate directly with your tradesperson

For Tradespeople

  • Flexible Availability - Set your working hours and toggle availability on/off
  • Job Management - Accept or decline job offers, view your schedule, and manage active jobs
  • Earnings Dashboard - Track your income, view analytics, and manage payouts
  • Professional Profile - Showcase your certifications, licenses, and portfolio
  • Direct Communication - Message customers and provide status updates
  • Verified Platform - Build trust through our verification and review system

Technology Stack

Frontend (Mobile App)

  • React Native - Cross-platform mobile development
  • Expo SDK 45 - Development framework and tooling
  • React Navigation v6 - Navigation and routing
  • react-native-maps - Map integration with Google Maps
  • @stripe/stripe-react-native - Payment processing
  • Firebase/Socket.io - Real-time messaging and notifications

Backend (Planned)

  • Node.js with Express/NestJS - API server
  • PostgreSQL - Primary database
  • Redis - Caching and session management
  • Stripe API - Payment processing
  • AWS S3/Google Cloud Storage - File storage

Project Status

🚧 Currently in Development 🚧

This project is being transformed from an Uber UI clone into a full-featured trades services platform. See the Development Roadmap for detailed progress and timelines.

Current Phase: Foundation and Infrastructure

  • βœ… Repository structure established
  • βœ… Documentation completed
  • βœ… Claude Code agents configured
  • πŸ”„ Backend API setup (in progress)
  • πŸ”„ Database schema design (in progress)
  • ⏳ Authentication system (planned)

Getting Started

Prerequisites

  • Node.js 18 or newer
  • Expo CLI: npm install -g expo-cli
  • iOS Simulator (Mac) or Android Emulator
  • A Claude.ai or Claude Console account (for Claude Code development)

Installation

# Clone the repository
git clone https://github.com/kelvincushman/247-App.git

# Navigate to the project directory
cd 247-App

# Install dependencies
yarn install
# or
npm install

# Start the development server
yarn dev
# or
npm start

Running the App

# Run on iOS
yarn ios

# Run on Android
yarn android

# Run on web
yarn web

Development with Claude Code

This project is optimized for development with Claude Code, an AI-powered coding assistant. All necessary configuration files and specialized agents are included.

Starting Claude Code

# Navigate to the project directory
cd 247-App

# Start Claude Code
claude

Available Agents

The project includes specialized agents for different development tasks:

  • senior-engineer - Architecture and complex problem-solving
  • junior-engineer - Feature implementation and bug fixes
  • git-expert - Version control operations
  • security-analyst - Security vulnerability scanning
  • expo-expert - Expo configuration and troubleshooting
  • stripe-expert - Payment integration
  • react-native-expert - Performance optimization
  • documentation-writer - Documentation maintenance
  • qa-engineer - Testing and quality assurance
  • code-architect - Code structure and file organization

See claude.md for detailed instructions and .claude/agents/ for agent definitions.

Documentation

Comprehensive documentation is available in the doc folder:

Project Structure

247-App/
β”œβ”€β”€ .claude/
β”‚   └── agents/          # Claude Code agent definitions
β”œβ”€β”€ doc/                 # Project documentation
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/         # Images, fonts, and static files
β”‚   β”œβ”€β”€ components/     # Reusable React components
β”‚   β”œβ”€β”€ constants/      # App constants and configuration
β”‚   β”œβ”€β”€ navigation/     # Navigation configuration
β”‚   └── screens/        # Screen components
β”œβ”€β”€ App.js              # Application entry point
β”œβ”€β”€ app.json            # Expo configuration
β”œβ”€β”€ claude.md           # Claude Code instructions
β”œβ”€β”€ package.json        # Dependencies and scripts
└── README.md           # This file

Contributing

We welcome contributions! Please follow these steps:

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

Development Guidelines

  • Follow the coding standards defined in .eslintrc
  • Write tests for new features
  • Update documentation as needed
  • Use the appropriate Claude Code agent for your task
  • Ensure all tests pass before submitting a PR

Linting

# Run linting
yarn lint

# Fix linting issues automatically
yarn lint --fix

Testing

# Run tests
yarn test

# Run tests with coverage
yarn test --coverage

Roadmap

Phase 1: Foundation (Weeks 1-8)

  • Backend API infrastructure
  • Database schema
  • User authentication

Phase 2: User Management (Weeks 9-14)

  • Customer and tradesperson profiles
  • Document verification system

Phase 3: Job Management (Weeks 15-22)

  • Service request creation
  • Job matching and assignment
  • Status tracking

Phase 4: Payments (Weeks 23-27)

  • Stripe integration
  • Payment processing
  • Invoicing and payouts

Phase 5: Communication (Weeks 28-32)

  • Real-time messaging
  • Push notifications

See the full roadmap for complete details.

Security

Security is a top priority. We implement:

  • Secure authentication with JWT tokens
  • PCI-compliant payment processing via Stripe
  • Encrypted data storage and transmission
  • Regular security audits
  • Tradesperson verification and background checks

Report security vulnerabilities to: [security contact to be added]

License

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

Support

For support and questions:

  • πŸ“§ Email: [support email to be added]
  • πŸ’¬ Discord: [discord link to be added]
  • πŸ“– Documentation: ./doc/

Acknowledgments

Status Badges

Build Status Tests Coverage Version


Made with ❀️ for tradespeople and their customers

About

24/7 Local is app designed to allow home owners or business owners access local network of local trades people. with React Native & Expo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 100.0%