Trippify is an AI-powered trip planning application designed to make travel planning seamless and personalized. Built with Flutter and AWS Amplify, Trippify offers a range of features to help users create, manage, and share their travel plans with a global community.
- Browse Trips: Explore a variety of trips shared by other travelers from around the world
- Manual Trip Creation: Create custom trip plans with complete flexibility.
- AI-Generated Trips: Use Google Gemini API to generate AI-powered trip plans tailored to your preferences.
- Real-Time Travel Info: Access ongoing flight details (via Skyscanner API) and train schedules (via IRCTC API).
- Global Community Sharing: Share your trips to inspire and connect with other adventurers.
Frontend: Flutter
Backend: AWS Amplify (Authentication, API, and Storage)
State Management: Bloc
Local Database: Hive
APIs: Google Gemini API, Flight API, IRCTC API
-
Email and Password Authentication: Implemented using AWS Amplify Auth for secure user sign-up and login.
-
Google Sign-In: Integrated with AWS Amplify to allow users to sign in using their Google accounts.
- User information, including profile details, is securely stored in AWS Amplify's database.
-
User-created trips are stored in Amplify Storage, ensuring accessibility and synchronization across devices.
-
Trips can be manually created or generated via Google Gemini API for AI-driven suggestions.
- Hive is used as the local database to cache user data and trips for offline access and improved performance.
-
Skyscanner API: Provides real-time flight schedules and updates.
-
IRCTC API: Fetches live train information for planning travel by rail.
- Bloc is used to manage state efficiently across the application, ensuring a smooth and responsive user experience.
Prerequisites
- Flutter SDK installed.
- AWS Amplify CLI configured.
- API keys for Google Gemini API, Flight API, and IRCTC API.
Steps to Set Up
- Clone the repository:
git clone https://github.com/arman-pani/trippify.git
cd trippify
- Install dependencies:
flutter pub get
- Configure AWS Amplify: Ensure that authentication, storage, and API modules are configured in the backend.
amplify init
amplify push
-
Add API keys for Google Gemini, Flight API, and IRCTC API to a secure configuration file.
-
Run the app:
flutter run
We welcome contributions from the community! To contribute:
- Fork the repository.
- Create a feature branch:
git checkout -b feature-name
- Commit your changes and push to the branch.
- Create a pull request for review.
This project is licensed under MIT License.