Giter Site home page Giter Site logo

marcosvel / gym-personal Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 13.87 MB

Gym training app with backend integration (Rest API), declarative interfaces with component library, authentication, controlled forms, refresh token and file upload from user photo gallery.

Home Page: https://www.figma.com/file/dmy30vjOfj0D2JrKGdb0Df/Ignite-Gym-(Community)?node-id=37%3A6&t=dka1Fntc6qPobQcE-1

TypeScript 60.66% JavaScript 26.14% Kotlin 4.90% Objective-C 1.96% Ruby 2.90% Objective-C++ 3.19% C 0.12% Swift 0.13%
svg-icons native-base skeleton filesystem image-picker axios-interceptors expo-dev-client onesignal-notifications authentication rest-api

gym-personal's Introduction

Gym Personal

Overview

Gym Personal is a gym training app that integrates with a backend to provide features like authentication, controlled forms, refresh tokens, and file uploads from the user photo gallery. This project showcases the use of declarative interfaces with a component library, and backend integration through a REST API.

๐Ÿง Features

  • User Authentication: Secure login and registration system with JWT and refresh tokens.
  • Training Management: Create and view training sessions.
  • File Uploads: Upload user profile pictures from the gallery.
  • Responsive Design: Optimized for various screen sizes.
  • Notifications: Push notifications using OneSignal.
  • RESTful API: Backend services with Node.js and Express.
  • Declarative UI: Built with a component library for clean and maintainable code.

๐Ÿ’ป Front-end Technologies Used

  • Expo: To streamline the development process having access to Android and iOS folders throught expo-dev-client.
  • TypeScript: Ensures type safety and code quality.
  • Native Base: Component library for building the UI.
  • Axios: For making API requests.
  • React Native: For navigation.
  • Hook-form & Yup: For handling form state and validation.
  • React Navigation: For navigation within the app.
  • Expo Image Picker: For handling image uploads.
  • OneSignal: For push notifications.

Getting Started

Prerequisites

  • Node.js and yarn
  • React Native CLI
  • Expo CLI

๐Ÿ› ๏ธ Installation

  1. Clone the repository:

    git clone https://github.com/MarcosVel/Gym-personal.git
    cd Gym-personal
  2. Backend Setup:

    cd backend
    yarn
    yarn start
  3. Mobile App Setup:

    cd mobile
    yarn
    npx expo start

Configuration

Mobile:

  • Update mobile/.env.example to .env and put your ONESIGNAL_APP_ID.
  • Update mobile/src/services/api.js with your baseURL.

Usage

  1. Start the backend server:

    cd backend
    npm start
  2. Run the mobile app:

    cd mobile
    npx expo start
  3. Access the app:

Use the emulator or physical device to navigate through the app, manage training sessions, and interact with other features in real-time.

gym-personal's People

Contributors

marcosvel avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.