A cloud-based file-sharing system with AI-powered security and anomaly detection.
Zap Sync is a modern alternative to traditional file-sharing platforms like Google Drive. Built with security and user experience in mind, it allows users to share and manage files seamlessly while leveraging AI to detect unusual or suspicious activities in real-time.
- ✅ Google OAuth2 Authentication (Secure user login & registration)
- ✅ MySQL-Powered User Management
- ✅ Cloud File Upload & Storage System
- ✅ AI-Based Anomaly Detection (Isolation Forest Model)
- ✅ Role-less, user-centric design (No admin dashboard)
- ✅ Smart Permissions & Encrypted File Sharing
- ✅ ZeroTier VPN-Ready for private network usage
- Django Rest Framework (DRF)
- Python 3.11+
- MySQL
- social-auth-app-django (OAuth2)
- djangorestframework-simplejwt (JWT Tokens)
- Scikit-learn (AI Models)
- React js (with Vite)
- React Google OAuth2 client
- Axios (API requests)
- ZeroTier (for secure remote connections)
zap-sync/
├── backend/ # Django backend (APIs, AI logic)
│ ├── zap_sync_backend/
│ ├── ai_models/
│ └── manage.py
├── frontend/ # React frontend (UI)
│ └── src/
├── dataset/ # AI datasets, reports, anomaly logs
├── docker-compose.yml # Multi-container Docker setup
├── README.md # Project overview
└── docs/ # Documentation & design notes
cd backend
pip install -r requirements.txt
python manage.py makemigrations
python manage.py migrate
python manage.py runservercd frontend
npm install
npm run devCreate a .env file for both frontend and backend with:
For backend:
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY=your-google-client-id
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET=your-google-client-secret
DATABASE_NAME=zap_sync_db
DATABASE_USER=root
DATABASE_PASSWORD=your_mysql_password
JWT_SECRET=your_jwt_secretFor frontend:
REACT_APP_GOOGLE_CLIENT_ID=your-google-client-id
REACT_APP_BACKEND_URL=http://localhost:8000- Google OAuth2-based login
- JWT token issuance
- User information securely stored in MySQL
- File uploads to cloud storage (AWS S3 or Firebase)
- Metadata tracking (size, type, upload time)
- Isolation Forest model to detect anomalous file-sharing behaviors
- Automatically flag suspicious user activity for review
- Phase 0: Project Setup (React + Django + MySQL)
- Phase 1: User Registration & OAuth2 Authentication
- Phase 2: File Upload & Cloud Storage
- Phase 3: AI-based Anomaly Detection Integration
- Phase 4: Smart Permissions & File Encryption
- Phase 5: Full Deployment on Cloud & VPN Integration
- Project Lead: Eugene Anokye
- Collaborators: Jedidiah
MIT License © ZapSync Team 2025