SkyNav AI is an advanced flight navigation tracker that visualizes and optimizes flight routes between multiple destinations. With powerful algorithms, custom-built data structures, and dynamic graphics, SkyNav AI delivers an interactive and personalized travel planning experience.
- Graphics Library: SFML or GLUT , OpenCV
- Programming Language: C++
- Custom Data Structures: Linked Lists, Queues, Stacks, Trees, Graphs
- Algorithms: Dijkstra’s Algorithm, A*, and Bidirectional Search
- Description: Flight data is parsed into a graph where cities are nodes and flights are edges. Each edge contains detailed flight information (e.g., airline, duration, dates).
- Graphics:
- Cities (nodes) and routes (edges) are visualized with tooltips for detailed flight information.
- Edge styles represent flight duration.
- Example: View flights from New York (JFK) to Los Angeles (LAX), including both direct and connecting options.
- Description: Users can search and book flights with detailed options for layovers and direct flights.
- Graphics: Highlights direct and connecting routes on the graph.
- Example: Book flights from Boston to Paris via a layover in London.
- Description:
- Use Dijkstra's or A* to find optimal routes based on cost or duration.
- Efficient processing via priority queues (heap implementation).
- Graphics:
- Real-time animation highlights optimal paths.
- Glowing effects indicate the final selected route.
- Example: Discover economical paths from San Francisco to Tokyo, with possible layovers in Seattle or Honolulu.
- Description: Users can filter results based on airline preferences or specific layover cities.
- Graphics:
- Highlight preferred cities with unique icons.
- Recalculate and display updated paths dynamically.
- Example: Filter routes to only show Emirates flights with layovers in Dubai.
- Description: Efficiently manage layover times using a queue structure.
- Graphics: Dashed lines indicate layovers, with dynamic updates for flight and layover durations.
- Example: Plan a flight from Miami to London with a 14-hour layover in New York.
- Description: Represent complex multi-leg journeys dynamically using a linked list structure.
- Graphics:
- Visualize each leg of the journey with arrows.
- Interactively add or remove segments of the trip.
- Example: Plan a route from San Francisco to Tokyo with multiple layovers.
- Description: Generate subgraphs based on user preferences (e.g., specific airlines or routes).
- Graphics:
- Highlight active routes.
- Reduce opacity for excluded cities.
- Example: Focus on routes served by Qatar Airways.
- Real-time Feedback:
- Dijkstra’s and A* algorithms dynamically show node evaluations.
- Visual animations highlight decision-making and pathfinding steps.
- Pathfinding Enhancements:
- Bidirectional search for improved long-distance route efficiency.
---
Flights.txt: Contains flight data for cities, airlines, and schedules.HotelCharges.txt: Details hotel costs for layovers.1.cpp: Main file to be eexecuted.layover_queue.h: This header file contains the whole main functionality.EXTRA_FUNCTION.h: Another header file for assistance.Some audio and video files: Along with font files.
- Implementing time-based key expiration for additional security.
- Encrypt
creds.txtfor even more secure storage like using a tool called crypter. - Adding more detailed logging and error-handling mechanisms.
- Clone this repository:
git clone https://github.com/AbdulAHAD968/SkyNavAI.git cd SkyNavAI - Command for execution:
g++ -o test 1.cpp -I/usr/include/opencv4 `pkg-config --libs opencv4` -lsfml-graphics -lsfml-window -lsfml-system -lsfml-audio ./test
- Admin Portal Password (Actually I have applied XOR Based encryption on Credentials with KEY-VALUE="key"):
Username = BILLA , PASSWORD = 1234
If you encounter any errors, bugs, or have suggestions for improvements, feel free to reach out to me.
You can contact me via email at: ahad06074@gmail.com
Errors and omissions are accepted!
Built with ❤️ by a passionate team of developers.
The one and only Abdul Ahad (Null and Void), Touqeer Ahmed (Mr. Snoop) and Mr. Faizan (The creative guy.)
Graphics powered by SFML , GLUT and OpenCv.
Algorithms inspired by cutting-edge pathfinding techniques.
Feel free to fork, contribute, or share your thoughts! 🌟 And if you are going to clone the repositery without credits, v will see u in hell(corporate).