Skip to content
forked from sunnysakib/EasyGo

EasyGo is an innovative indoor navigation application designed to streamline data collection and facilitate efficient navigation within indoor spaces and collect comprehensive indoor data effortlessly.

License

Notifications You must be signed in to change notification settings

mmkrasel/EasyGo

 
 

Repository files navigation

Logo

EasyGo

Efficient Indoor Navigation Map From Streamlined Dataset with Shortest Path Determination

Table of Contents
  1. About The Project
  2. Getting Started
  3. User Instructions
  4. Developer Instructions
  5. Find Bug?
  6. Know issues (Work In Progress)
  7. License
  8. Support - Like This Project ?
  9. Contributor
  10. Contract

About this project

EasyGo is an innovative indoor navigation application designed to streamline data collection and facilitate efficient navigation within indoor spaces. Leveraging mobile sensors such as accelerometer, magnetometer, and gyroscope, EasyGo empowers users to collect comprehensive indoor data effortlessly.

The platform offers an intuitive user interface that allows administrators to seamlessly gather indoor data, enabling swift and precise mapping of indoor environments. Users benefit from an interactive panel, granting them the ability to navigate personalized routes with ease.

At its core, EasyGo prioritizes user experience by providing a robust system for data collection while offering efficient and optimized indoor navigation, ensuring users can traverse indoor spaces conveniently and efficiently.

Preview

demo

Contribution

  1. Efficient use of mobile phone sensors (i.e. Accelerometer, Gyroscope, Magnetometer) to collect indoor navigation data.
  2. Automated detection of invalid data reading from sensors.
  3. Use efficient data structures (i.e., graph and coordinates) to represent navigation data.
  4. Find all pairs shortest paths to navigate from door A to B.
  5. User friendly and simple mobile app UI/UX for indoor navigation.
  6. Built With

    Java
    Java
    TypeScript
    Android Studio
    Next JS
    MySQL
    React JS
    PHP
    Apollo
    Rest API
    Tailwind
    Remote Server

    Getting Started

    Prerequisites

    • Java
    • XML
    • MySQL
    • Android Studio
    • Knowledge of Mobile Sensor
    • PHP
    • Rest API

    User instruction

    Running the Project Locally

    To run this Android Studio project locally, follow these steps:

    1. Clone this repository to your local machine using the following command:

    https://github.com/frijve99/EasyGo.git
    
    1. Install Android Studio if you haven't already. You can download it from here.

    2. Open the project in Android Studio by selecting "Open an existing Android Studio project" and navigating to the project directory.

    3. Configure the local.properties file with the path to your Android SDK. Create the file if it doesn't exist and add the following lines:

    Replace /path/to/your/android/sdk with the actual path to your Android SDK.

    1. Build the project by clicking on "Build" in the Android Studio toolbar and then selecting "Make Project".

    2. Run the project by clicking on the "Run" button (green triangle) in the Android Studio toolbar.

    That's it! Your Android app should now run locally on your emulator or connected device.

    Developer Instruction

    Add your Server url to the all save data and get data classes for storing indoor data and get data while navigation.
    private static final String CREATE_URL = "Add_Your_Server_Url";
    Create HTTP connection
    URL url = new URL(CREATE_URL);
    
    HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
    urlConnection.setRequestMethod("POST");
    urlConnection.setRequestProperty("Content-Type", "application/json");
    urlConnection.setDoOutput(true);
    After store data/get data disconnect HTTP connection
     urlConnection.disconnect();

    Deploying the PHP files in Remote Server.

    • Step 1: There are code files for the PHP REST API. Deploy these files on your remote server.

    • Step 2: In the PHP_REST_APP, be sure to replace 'your_database_name,' 'your_username,' and 'your_password' with your actual database connection details in the /php_rest_app/config/Database.php file.

    // Replace these values with your database credentials
    private $host = 'localhost';
    private $db_name = 'your_database_name';
    private $username = 'your_username';
    private $password = 'your_password';
    private $conn;
    • Step 3: Test your API by visiting your server's IP address or domain name and appending the path to your PHP API endpoint in a web browser. You can also use tools like curl or Postman for testing.
    http://<server_ip>/php_rest_app/api/nodeinfo/read.php

    Find Bug?

    If you have found an issue or would like to submit an improvement to this project, please submit an issue using the 'Issues' tab above. If you would like to submit a pull request (PR) with a fix, please reference the issue you created

    Know issues (Work In Progress)

    • User interface for a background blueprint
    • Efficient Searching Navigation.
    • Improving live tracking when users navigate the app.

    Contributor

    License

    Published and distributed under the MIT License. See LICENSE for more information.

    Support - Like This Project ?

    Stay tuned for exciting updates and progress on our project! Follow us on GitHub for the latest news and developments. Your support inspires us.

    Contract

    Email

About

EasyGo is an innovative indoor navigation application designed to streamline data collection and facilitate efficient navigation within indoor spaces and collect comprehensive indoor data effortlessly.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%