Skip to content

hadoyyo/PetStaytion-App

Repository files navigation

PetStaytion Mobile App

Table of Contents

Project Overview

PetStaytion is an advertising platform designed to connect local pet service providers with pet owners seeking trusted care and services for their animals. The platform aims to simplify discovering, offering, and booking pet-related services within local communities.

Note

PetStaytion mobile application is available in English language version!

This repository contains a mobile application that is part of a group project whose goal was to create the described platform. The application was developed using TypeScript and the React Native framework, ensuring availability on both Android and iOS devices.

Features

All Users

  • 🔍 Browsing advertisements
  • ⚙️ Filtering and sorting advertisements

Guest

  • 📝 Account registration
  • 🔑 Login

Registered but not verified

  • ✅ Email address verification

Client

  • ✏️ Editing personal data (first name, last name, phone number, city, profile picture)
  • 🐶 Creating, editing, and deleting pets profiles
  • 🩺 Generating pet health reports (Gemini API)
  • ❤️ Saving advertisements
  • 📅 Booking services from advertisements
  • 📋 Bookings management (cancellation, payments)
  • ⭐ Adding, editing, and deleting reviews about service providers
  • 💼 Possibility of becoming a service provider (requires payment)

Service Provider Has access to all client features, plus:

  • 📣 Creating, editing, and deleting advertisements
  • 📥 Managing new bookings (accepting, rejecting, viewing pets assigned to booking by client)
  • ⚠️ Reporting overdue payments for services to the administrator

Other features

  • 🌐 2 language versions (Polish/English)
  • 🌙 Dark mode of the application
  • 💰 Stripe payments integration
  • 🔔 Push notifications when the booking status changes
  • 🎨 Customizable UI for service provider

Technologies

  • TypeScript
  • React Native
  • Expo
  • Axios
  • Jest

Requirements

Software versions used for development:

  • React Native 0.81.5
  • Expo 54.0.25
  • Expo Go App 54.0.6

Warning

Compatibility with earlier versions has not been tested.

Setup Instructions

To run a project locally, you must have Node.js and npm installed.

Important

Download guide: Installing Node.js and npm

To launch the application, you will need to configure the server side. You also need to download the Expo Go app on your mobile device (available on Google Play and App Store) and ensure both your phone and development computer are connected to the same Wi-Fi network.

  1. Download and extract the PetStaytion-App folder.
  2. Open the folder in code editor.
  3. Open the apiService.ts file located in the services folder.
  4. Assign your computer's IP address to the API_BASE_URL constant and save the changes.
  5. Navigate to the project folder in your terminal.
  6. Install dependencies.
$ npm install
  1. Launch a local development server.
$ npx expo start
  1. Press the “S” key on your keyboard to switch to Expo Go.

Tip

You can skip this step by adding --go to the npx expo start command.

  1. Scan the QR code using the Expo Go app on your mobile device.

Warning

The application will not run correctly without the required .env configuration files (e.g. Firebase credentials, API URLs). These files are intentionally excluded from the repository.

Screenshots

About

Mobile version of an app designed to connect service providers with pet owners.

Topics

Resources

Stars

Watchers

Forks

Contributors