GeoFyle is a mobile application that enables users to share and discover files based on geographic proximity. Files are only accessible to users who are physically located within 100 meters of where the file was originally uploaded.
The project consists of two main components:
- Backend: A serverless AWS backend using Lambda, API Gateway, DynamoDB, and S3
- Frontend: A Flutter mobile application for iOS and Android
- Upload files with geographic coordinates
- Discover files within proximity (default 100m radius)
- Interactive map view of nearby files
- File download only when physically at the file's location
- User authentication via device ID
- Automatic file expiration and cleanup
The serverless backend utilizes:
- AWS Lambda for compute
- Amazon API Gateway for REST endpoints
- Amazon DynamoDB for metadata storage
- Amazon S3 for file storage
- AWS CloudWatch Events for scheduled cleanup
The Flutter app follows a clean architecture with:
- Provider-based state management
- Geolocator for precise location tracking
- Flutter Map for interactive mapping
- Lottie for smooth animations
- HTTP for API communication
For detailed setup and usage instructions, see:
This application was written by Johann-Peter Hartmann (johann-peter.hartmann@mayflower.de) as a demo case for Claude Code usage.
This project is licensed under the MIT License.