Skip to content

Latest commit

 

History

226 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

24 APPS SmartFlow

About The Project

Our project focuses on providing a robust mobile application to track and manage key asset metrics effectively.

Project Overview

Our team successfully developed a mobile application designed to help companies track and manage metrics of various assets. The primary goal of this project was to simplify asset management and increase awareness of usage patterns, which could lead to significant reductions in operational costs. Data-driven asset management techniques have the potential to deliver up to 15% annual savings.

Key Features

  • Interactive Monitoring: Track key asset metrics with ease.
  • Data Visualization: Visualize data across time periods (weekly, monthly, yearly).
  • Role-Based Access: Support for administrators and regular users.
  • Charts and Graphs: Clear and interactive data presentations.

Application Architecture

The application features a well-structured architecture divided into the following layers:

  1. Frontend
  • Intuitive and user-friendly UI/UX.
  • Role-based access control for administrators and users.
  • Interactive charts and tables for data visualization.
  1. Backend
  • RESTful API for efficient request handling.
  • Scalability and robust architecture for backend operations.
  1. Database
  • MySQL for reliable data storage, retrieval, and management.

Built With

This project was built using the following major frameworks, libraries, and tools:

  • React Native
  • Expo
  • Node.js
  • Express.js
  • MySQL

Getting Started

To set up the project locally and get it running, follow the steps below. These instructions will guide you through installing dependencies, configuring the environment, and running the application.

Prerequisites

Ensure the following prerequisites are installed on your system:

  1. Node.js:
  • npm (comes with Node.js)
  • Install Node.js and npm here.
  1. Visual Studio Code:
  • Recommended for editing and managing the project.
  • Download it from here.
  1. Android Studio:
  • Required for running and testing the application on an Android emulator.
  • Follow these steps to set it up:

Download and Install Android Studio: here.

Set Up an Android Emulator:

  1. Open Android Studio.

  2. Go to More Actions > Virtual Device Manager.

    Virtual Device

  3. Create Virtual Device.

    step1

  4. Select a device model (e.g.,Pixel 8) and click Next.

    step2

  5. Download a recommended system image (e.g.,R) if not already installed and select a System Image and click Next.

    step3

  6. Verify configuration and Finish the setup.

    step4

  7. Start the emulator by clicking the play icon.

step5

  1. MySQL Workbench:
  • Download it from here.

Installation

Follow these steps to install and configure the project locally:

  • Clone the repository
git clone https://github.com/AndreiSusha/SmartFlow.git
  • Navigate to the project directory
cd your_repo_name

Database Setup

This project includes a database dump file to help you set up the SmartFlow database.

Steps to Import the Database

  1. Ensure you have MySQL installed and running on your machine.
  2. Open MySQL Workbench or any other MySQL client.
  3. Follow these steps to import the database:
    • Open MySQL Workbench and go to Server > Data Import.
    • Select Import from Self-Contained File and choose the file database/SmartFlow.sql.
    • Select or create a new schema (database) named SmartFlow.
    • Start the import process.

Verifying the Database

  1. After the import, run the following query in MySQL Workbench to ensure the data is loaded:

    USE SmartFlow;
    SHOW TABLES;
    

Launch of the project

  1. Backend:
  • Navigate to the director:
cd Backend
  • Create a .env file:
MYSQL_HOST=127.0.0.1
MYSQL_USER=root
MYSQL_PASSWORD=your_password
MYSQL_DATABASE=smartflow
PORT=3000
  • Install NPM dependencies:
npm install
  • Start the backend server:
npm start
  1. Frontend
  • Navigate to the directory:
cd frontend
  • Create a .env file: Add the backend API URL:
EXPO_PUBLIC_API_BASE_URL="http://your_IP_Address:3000/"
  • Install NPM dependencies:
npm install
  • Start the frontend project:
npm start

Run the mobile app using Expo:

  • If you’re testing on a physical device, scan the QR code with the Expo Go app.
  • If you're using an emulator, ensure it is running before starting the project.
  • Press a in the terminal to run the project on the Android emulator.

About

This project aims to develop a mobile application that serves as a demo or proof-of-concept for monitoring and displaying numeric trend values of various utilities such as electricity, temperature, and water usage.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages