A powerful IoT evidence extraction and management system specifically designed for WearOS smartwatches.
- Pranav Hemanth - PES1UG23CS433 GitHub
- Pranavjeet Naidu - PES1UG23CS586 GitHub
- Shailja Shaktawat - PES1UG23CS534 GitHub
- Nishant K Holla - PES1UG23CS401 GitHub
IoTrace is a specialized platform designed for extracting, analyzing, and managing evidence from IoT devices, with a particular focus on WearOS smartwatches. The platform leverages advanced AI capabilities to provide detailed insights into device behavior and patterns.
- 🔍 Smart Log Extraction: Automated extraction of logs from WearOS devices
- 📊 Interactive Visualization: Real-time data visualization with charts and graphs
- 🤖 AI-Powered Analysis: Intelligent log analysis using Google's Gemini AI
- 📄 Evidence Reports: Generate comprehensive PDF reports for legal documentation
- 🔒 Secure Storage: Enterprise-grade security with Supabase
- 📱 Responsive Design: Mobile-first interface for easy access
- Node.js 18.x or later
- npm or yarn
- Supabase account
- Google Cloud account (for Gemini AI)
- WearOS device (tested with Samsung Watch5 Pro)
- Clone the repository:
git clone https://github.com/yourusername/IoTrace.git
cd IoTrace
- Install dependencies:
cd frontend
npm install
- Set up environment variables:
cp .env.example .env.local
- Configure your environment variables in
.env.local
:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_api_key
- Start the development server:
npm run dev
IoTrace/
├── frontend/ # Next.js frontend application
│ ├── app/ # Next.js app directory (pages and routes)
│ │ ├── cases/ # Case management pages
│ │ ├── dashboard/ # Dashboard pages
│ │ ├── login/ # Authentication pages
│ │ └── signup/ # User registration pages
│ ├── components/ # Reusable UI components
│ │ └── ui/ # Base UI components
│ ├── lib/ # Utility functions and services
│ │ ├── supabase.ts # Supabase client configuration
│ │ ├── gemini.ts # Gemini AI integration
│ │ └── pdf-generator.ts # PDF report generation
│ └── public/ # Static assets
├── backend/ # Backend services
│ ├── api/ # API endpoints
│ │ ├── auth/ # Authentication endpoints
│ │ ├── cases/ # Case management endpoints
│ │ └── logs/ # Log processing endpoints
│ ├── services/ # Business logic services
│ │ ├── log-extractor/ # Log extraction service
│ │ ├── data-processor/ # Data processing service
│ │ └── report-generator/ # Report generation service
│ └── utils/ # Utility functions
├── supabase/ # Supabase configuration
│ ├── migrations/ # Database migrations
│ ├── seed/ # Seed data
│ └── types/ # TypeScript types
├── scripts/ # Utility scripts
│ ├── setup.sh # Project setup script
│ └── deploy.sh # Deployment script
├── docs/ # Documentation
│ ├── api/ # API documentation
│ └── setup/ # Setup guides
├── tests/ # Test files
│ ├── unit/ # Unit tests
│ ├── integration/ # Integration tests
│ └── e2e/ # End-to-end tests
├── .env.example # Example environment variables
├── package.json # Project dependencies
├── tsconfig.json # TypeScript configuration
└── README.md # Project documentation
- Automated extraction of system logs from WearOS devices
- Support for multiple log types and formats
- Real-time log streaming and processing
- Interactive time-series charts
- Component distribution analysis
- Customizable data views
- Export capabilities
- Pattern recognition in device behavior
- Anomaly detection
- Component interaction analysis
- Time-based pattern analysis
- Professional PDF report generation
- AI-enhanced insights
- Customizable report templates
- Secure storage and sharing
- End-to-end encryption for sensitive data
- Role-based access control
- Secure file storage
- Audit logging
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Next.js for the React framework
- Supabase for the backend infrastructure
- Google Gemini AI for the AI capabilities
- Recharts for the visualization components
For support, please open an issue in the GitHub repository or contact the maintainers.