Skip to content

Android Pulse is a device monitoring system, with the goal of a friendly user interface, that allows you to track and analyze the performance of your Android devices in real-time.

Notifications You must be signed in to change notification settings

skw359/Android-Pulse-Server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Android Pulse

A comprehensive device monitoring system for Android devices with real-time analytics and a user-friendly web interface.

Overview

Android Pulse is a powerful device monitoring solution that enables you to track and analyze the performance of your Android devices in real-time. The system features a robust server-side application that efficiently collects, stores, and visualizes performance data from connected Android devices through an intuitive web dashboard.

Key Features

Device Monitoring

  • Real-time tracking of multiple Android devices simultaneously
  • Comprehensive metrics collection including:
    • Battery level and charging status
    • Wi-Fi network connectivity and signal strength
    • Mobile data availability and usage
    • RAM usage and memory statistics
    • Storage capacity and usage patterns
    • Network traffic monitoring (download/upload speeds, total data usage)

User Interface

  • Web-based dashboard for intuitive data visualization
  • Device aliasing system for better organization and identification
  • Responsive design for desktop and mobile access

API Integration

  • RESTful API endpoints for seamless data collection and retrieval
  • Flexible data submission for custom Android applications
  • Real-time data synchronization between devices and server

Technology Stack

Component Technology
Backend Node.js with Express.js framework
Database PostgreSQL with Sequelize ORM
Frontend HTML5, CSS3, JavaScript (ES6+)
Security bcrypt for password hashing
Validation express-validator for input sanitization

Quick Start

Prerequisites

  • Node.js (v14 or higher)
  • PostgreSQL database
  • npm or yarn package manager

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/android-pulse.git
    cd android-pulse
  2. Install dependencies

    npm install
  3. Database setup

    • Create a PostgreSQL database
    • Update connection details in server.js
  4. Start the server

    node server.js
  5. Access the application

    • Open your browser to http://localhost:3000
    • Begin monitoring your Android devices

API Reference

Device Statistics

Submit Device Data

POST /api/stats

Submit real-time statistics from Android devices.

Retrieve Device Stats

GET /api/stats/:deviceId

Fetch historical and current statistics for a specific device.

Device Management

List All Devices

GET /devices

Retrieve a comprehensive list of all connected devices.

Update Device Alias

POST /api/updateAlias

Modify the display name/alias for better device identification.

Security Considerations

⚠Important Security Notice

The current implementation uses a basic authentication system suitable for development purposes only. For production deployments, please implement:

  • Environment variable configuration (.env file)
  • JWT-based authentication
  • HTTPS encryption
  • Rate limiting
  • Input sanitization enhancements

Contributing

Ideas from all over the world are always welcome! Here's how you can help:

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

Development Guidelines

  • Try to follow existing code style and conventions
  • Add tests for new features
  • Update documentation as needed

License

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

Support

If you encounter any issues or have questions:

  • Open an issue on GitHub
  • Check existing issues for solutions
  • Review the documentation

About

Android Pulse is a device monitoring system, with the goal of a friendly user interface, that allows you to track and analyze the performance of your Android devices in real-time.

Resources

Stars

Watchers

Forks