Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/younes43/plan-my-trip
Journify AI is travel planning application that leverages AI to create personalized trip itineraries based on your budget and preferences. Integrated with OpenAI's API, Journify AI offers tailored travel recommendations, including accommodations, activities, and transportation options.
https://github.com/younes43/plan-my-trip
ai api google gpt-4 javascript maps nextjs openai travel vercel
Last synced: 13 days ago
JSON representation
Journify AI is travel planning application that leverages AI to create personalized trip itineraries based on your budget and preferences. Integrated with OpenAI's API, Journify AI offers tailored travel recommendations, including accommodations, activities, and transportation options.
- Host: GitHub
- URL: https://github.com/younes43/plan-my-trip
- Owner: Younes43
- License: mit
- Created: 2024-10-02T02:51:33.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-10-22T04:16:12.000Z (26 days ago)
- Last Synced: 2024-11-04T14:03:41.794Z (13 days ago)
- Topics: ai, api, google, gpt-4, javascript, maps, nextjs, openai, travel, vercel
- Language: TypeScript
- Homepage: https://www.journifyAI.com
- Size: 42.2 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Journify AI - AI-Powered Travel Planner
Journify AI is an innovative travel planning application that leverages artificial intelligence to create personalized trip itineraries based on your budget and preferences. Integrated with OpenAI's powerful language model, Journify AI offers tailored travel recommendations, including accommodations, activities, and transportation options. Future integrations with Google Maps, booking platforms, and activity providers will further enhance the travel planning experience.
## Demo
## Features
- AI-powered trip planning
- Budget-based itinerary creation
- Personalized travel recommendations
- Integration with OpenAI
- Responsive design for various devices
- User-friendly interface
- Docker containerization
- Kubernetes orchestration## Quick Start
To run Journey AI locally, follow these steps:
1. Clone the repository:
```
git clone https://github.com/Younes43/Plan-My-Trip.git
cd Plan-My-Trip
```2. Install dependencies:
```
npm install
```3. Set up environment variables:
Create a `.env.local` file in the root directory and add your API keys:
```
OPENAI_API_KEY=your_openai_api_key_here
NEXT_PUBLIC_GOOGLE_PLACES_API_KEY=your_client_side_google_places_api_key_here
GOOGLE_PLACES_API_KEY=your_server_side_google_places_api_key_here
```4. Run the development server:
```
npm run dev
```5. Open [http://localhost:3000](http://localhost:3000) in your browser to see the application.
## Docker
To run the application using Docker:
1. Build the Docker image:
```
docker build -t younes43/journify-ai:latest .
```2. Run the Docker container:
```
docker run -p 3000:3000 -e OPENAI_API_KEY=your_openai_api_key -e GOOGLE_PLACES_API_KEY=your_google_places_api_key younes43/journify-ai:latest
```## Kubernetes
To deploy the application on Kubernetes:
1. Ensure you have a Kubernetes cluster set up (e.g., using Minikube for local development).
2. Apply the Kubernetes configurations:
```
kubectl apply -f secrets.yaml
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
```3. Access the application:
If using Minikube, run:
```
minikube service journify-ai-service
```## Technologies Used
- Next.js
- React
- TypeScript
- Tailwind CSS
- OpenAI API
- Docker
- Kubernetes## Project Structure
The main components of the project are:
- `src/app/page.tsx`: The main landing page component
- `src/app/components/`: Directory containing all React components
- `src/app/api/generatePlan/route.tsx`: API route for generating travel plans
- `Dockerfile`: Instructions for building the Docker image
- `deployment.yaml`: Kubernetes Deployment configuration
- `service.yaml`: Kubernetes Service configuration
- `secrets.yaml`: Kubernetes Secrets configuration (for API keys)## Key Components
### TravelPlannerForm
This component allows users to input their travel preferences, including destination, date range, and budget.
### TripPlan
This component displays the generated travel itinerary, including daily activities, accommodations, and transportation options.
## API Integration
The application integrates with the following APIs:
- OpenAI API: Used to generate personalized travel plans based on user input.
- Google Maps API: Provides autocomplete functionality for destination input and location data.
- Google Places API: Fetches detailed information about locations and points of interest.
- Google Maps Static API: Retrieves images for destinations in the travel itinerary.These integrations enable Journify AI to offer a comprehensive and visually appealing travel planning experience.
## Styling
The project uses Tailwind CSS for styling, with global styles defined in `src/app/globals.css`.
## Contributing
Contributions to Journey AI are welcome! Please feel free to submit a Pull Request.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Future Enhancements
- Integration with Google Maps for location-based services
- Connecting with booking platforms for real-time availability and pricing
- Incorporating activity providers for seamless experience booking
- User authentication and profile management
- Saving and sharing travel plans
- Advanced Kubernetes features (e.g., autoscaling, persistent storage)## Support
If you encounter any issues or have questions, please file an issue on the GitHub repository.