Flight Companion is a mobile application developed in 48 hours for the BugsByte 2026 Hackathon. It assists travelers by consolidating flight tracking and trip planning into a single interface.
We built this project to solve common travel frustrations. Flight Companion parses boarding passes to track flights, offers a chatbot for travel questions, and provides destination guides. It demonstrates how modern tools can be combined to create a helpful travel assistant.
- Barcode Scan: Scans boarding passes to automatically import flight details.
- Interactive Chat: Helps answer questions about your trip.
- Context-Aware: Uses your itinerary to provide relevant answers.
- City Guides: Simple itineraries for destinations like Porto.
- Transport: Routes to hotels or points of interest.
The project was built using:
- Framework: React Native with Expo
- Language: TypeScript
- Storage: Async Storage for offline persistence
- Maps: Native Maps integration
- Framework: FastAPI (Python)
- Data Processing: Pandas, NumPy
- Web Scraping: BeautifulSoup4 (for retrieving real-time airport/flight data)
- Scraper: Go
- Database: SQLite
- Testing: Pytest
- Extended API Support: Improve data reliability with official flight APIs.
- Sharing: Add ability to share trips with friends.
- Language Support: Add more languages.
Flight Companion was created by:
| Member | Institution | Role / Study Area |
|---|---|---|
| Herculano Esteves | Universidade do Minho | Software Engineering (Team Lead) |
| Pergih | Universidade do Minho | Computer Science |
| Arqueiro Magico | Nortavia Transportes Aéreos S.A. | ATPL(A) Pilot Student (Domain Expert) |
| PatoST | IPCA | Design & Engineering |
Follow these instructions to set up the project locally.
- Node.js & npm
- Python 3.9+
- Go 1.18+
- Expo Go app on your mobile device (optional, for testing)
git clone https://github.com/Herculano-Esteves/bugsbyte2026.git
cd bugsbyte2026The backend handles data parsing, storage, and API requests.
cd backend
# Create a virtual environment
python3 -m venv .venv
# Activate the virtual environment
# On Linux/MacOS:
source .venv/bin/activate
# On Windows:
# .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the server
uvicorn main:app --host 0.0.0.0 --port 8000 --reloadNote: The server will be accessible at http://<YOUR_LOCAL_IP>:8000.
This microservice handles barcode and PKPass file parsing.
cd backend/"Flight info get"
# Run the server
go run main.goNote: This service runs on port 8080.
The mobile application interface.
cd frontend/flight-companion
# Install dependencies
npm install
# Start the Expo development server
npx expo startScan the QR code with the Expo Go app (Android/iOS) to run the app on your phone, or press a to run on an Android Emulator.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.


