https://github.com/ysskrishna/insightx
A powerful image analysis platform that provides automated insights through advanced computer vision and machine learning capabilities.
https://github.com/ysskrishna/insightx
aws-s3 computer-vision distributed-systems docker docker-compose fastapi image-classification image-processing machine-learning microservice nextjs nsfw-detection object-detection rabbitmq s3 yolo ysskrishna
Last synced: 3 months ago
JSON representation
A powerful image analysis platform that provides automated insights through advanced computer vision and machine learning capabilities.
- Host: GitHub
- URL: https://github.com/ysskrishna/insightx
- Owner: ysskrishna
- License: agpl-3.0
- Created: 2025-05-03T13:13:27.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-05-11T11:08:06.000Z (11 months ago)
- Last Synced: 2025-05-31T02:27:07.662Z (10 months ago)
- Topics: aws-s3, computer-vision, distributed-systems, docker, docker-compose, fastapi, image-classification, image-processing, machine-learning, microservice, nextjs, nsfw-detection, object-detection, rabbitmq, s3, yolo, ysskrishna
- Language: TypeScript
- Homepage:
- Size: 214 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# InsightX
A powerful image analysis platform that provides automated insights through advanced computer vision and machine learning capabilities.
## Project Overview
InsightX is a distributed system that provides real-time image analysis with the following key features:
- **NSFW Detection**: Advanced content moderation using deep learning to identify potentially inappropriate content
- **Object Detection**: Real-time object detection with bounding boxes using YOLOv8
- **Visual Insights**: Detailed analysis of image contents with confidence scores
- **Modern UI**: Clean and intuitive interface for viewing and managing image analysis results
- **Flexible Storage**: MinIO for local development and AWS S3 for production environments
## Key Features
- **Real-time Processing**: Asynchronous processing pipeline for quick image analysis
- **Multiple Detection Models**:
- YOLOv8 for object detection
- NudeNet for NSFW content detection
- **Visual Annotations**: Automatic generation of annotated images with bounding boxes
- **Detailed Analytics**: Comprehensive object detection results with confidence scores
- **Content Moderation**: Built-in NSFW detection for content safety
- **Scalable Architecture**: Distributed system design for handling high volumes of images
## Prerequisites
- Docker and Docker Compose
- Node.js (for local development)
- Python 3.8+ (for local development)
## Quick Start
1. Clone the repository:
```bash
git clone [repository-url]
cd insightx
```
2. Start the services using Docker Compose:
```bash
docker-compose up -d
```
3. Access the application:
- Frontend: http://localhost:3000
- API: http://localhost:8000
- Worker: Running in background
## Project Structure
```
.
├── client/ # Next.js frontend application
├── api/ # FastAPI backend service
├── worker/ # Background processing service
├── storage/ # Image storage and processing
└── docker-compose.yml
```
## Development
### Client
- Built with Next.js and TypeScript
- Modern UI components using shadcn/ui
- Real-time image analysis results display
- Located in `client/` directory
- See [Client README](client/README.md) for detailed setup instructions
### API
- FastAPI-based backend service
- Handles image uploads and analysis requests
- Manages detection results and storage
- Supports both MinIO, AWS S3 for image storage
- Located in `api/` directory
- See [API README](api/README.md) for detailed setup instructions
### Worker
- Background processing service for image analysis
- Implements YOLOv8 and NudeNet models
- Generates annotated images with detection results
- Supports both MinIO, AWS S3 for image storage
- Located in `worker/` directory
- See [Worker README](worker/README.md) for detailed setup instructions
## Contributing
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## License
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) - see the [LICENSE](LICENSE) file for details.
The AGPL-3.0 license requires that any modifications to this software must be made available under the same license when the software is run over a network. This ensures that improvements to the software remain open source and available to the community.
Copyright (c) 2025 Y. Siva Sai Krishna
## Support
For support, please open an issue in the repository or contact the maintainers.