GeoSaurio is an interactive Flutter application developed for Liquid Galaxy that allows users to explore dinosaurs through geography, geological periods and interactive visualizations.
Users can explore dinosaurs by period, continent and country, navigate to their locations in Liquid Galaxy, view additional information, listen to narrations and use interactive features such as orbit, skeleton visualization and dinosaur comparison.
- Overview
- Key Features
- Technologies Used
- Installation
- Usage
- Liquid Galaxy Integration
- Contact
- License
- Acknowledgements
GeoSaurio combines dinosaur information with the immersive visualization capabilities of Liquid Galaxy.
The application allows users to explore dinosaurs using the following hierarchy:
Geological Period β Continent β Country β Dinosaur
As the user explores the application, GeoSaurio communicates with Liquid Galaxy to move the camera, display dinosaur locations and show additional information on the different screens.
Once a dinosaur is selected, the user can access different interactive features such as a 360Β° orbit, audio narration, skeleton visualization and dinosaur comparison.
The application also includes an interactive mini map synchronized with Liquid Galaxy.
- Explore dinosaurs by geological period.
- Filter dinosaurs by continent and country.
- View detailed information about each dinosaur.
- Navigate directly to dinosaur locations.
- FlyTo continents.
- FlyTo countries.
- FlyTo dinosaur locations.
- Camera positioning using KML LookAt.
- Synchronization between the application and Liquid Galaxy.
GeoSaurio includes an interactive 360Β° orbit around the selected dinosaur.
The orbit uses the dinosaur position as its center and continuously updates the camera heading to create a smooth rotation around it.
The rotation is divided into multiple steps that are sent to Liquid Galaxy through SSH.
The application includes an interactive map where dinosaur locations are displayed using markers.
Users can:
- Move around the map.
- Zoom in and out.
- Select dinosaurs using their markers.
- Synchronize the map position with Liquid Galaxy.
GeoSaurio uses KML to display dinosaur locations in Liquid Galaxy.
The application can:
- Display dinosaur markers.
- Remove markers.
- Display the selected dinosaur cube.
- Clean the KML content when necessary.
Users can display a skeleton visualization of the selected dinosaur using the Liquid Galaxy screens.
The comparison feature provides an additional visualization that helps users understand the dimensions of the selected dinosaur.
GeoSaurio includes audio narration for dinosaurs.
The user can:
- Start the narration.
- Pause the narration.
- Stop the narration.
The application supports both light and dark themes.
Users can configure the Liquid Galaxy connection directly from the application:
- IP address
- Port
- Username
- Password
- Number of screens
The configuration is stored locally using SharedPreferences.
GeoSaurio also provides system controls for Liquid Galaxy, including:
- Clean KML content.
- Manage logos.
- Relaunch Liquid Galaxy.
- Reboot the system.
- Shut down the system.
GeoSaurio was developed using:
- Flutter
- Dart
- Liquid Galaxy
- KML
- SSH
- SFTP
- Provider
- SharedPreferences
- flutter_map
- OpenStreetMap
- just_audio
Before running GeoSaurio, make sure you have:
- Flutter installed.
- Dart installed.
- A compatible Android device or emulator.
- Access to a Liquid Galaxy installation if you want to use the Liquid Galaxy features.
git clone <https://github.com/LiquidGalaxyLAB/geosaurio-lg>Enter the project directory:
cd geosaurio-lgInstall the Flutter dependencies:
flutter pub getRun the application:
flutter runOpen LG Settings and enter the connection information:
- IP address
- SSH port
- Username
- Password
- Number of screens
Connect GeoSaurio to Liquid Galaxy.
From the main screen, select the geological period you want to explore.
GeoSaurio displays the continents containing dinosaurs from the selected period.
Selecting a continent also moves the Liquid Galaxy camera to that location.
Choose one of the available countries to display its dinosaurs and geographical information.
Select a dinosaur to navigate to its location and open its detail screen.
From the dinosaur detail screen, you can use:
- Orbit β Start a 360Β° camera orbit around the dinosaur.
- Narration β Listen to the dinosaur description.
- Skeleton β Display the dinosaur skeleton visualization.
- Comparison β Display the dinosaur comparison visualization.
GeoSaurio communicates with Liquid Galaxy primarily through an SSH connection.
LgService acts as the main communication point and maintains the connection with the Liquid Galaxy system.
The architecture separates the different responsibilities:
LgService
β
ββββββββββββββββββΌβββββββββββββββββ
β β β
Navigation Orbit Markers
β β β
FlyTo 360Β° Orbit KML Markers
β
βββββββββββββββββ¬ββββββββββββββββ
β β β
Overlays Media System
The specialized services use LgService to execute the required commands without duplicating the SSH connection logic.
SSH is used to:
- Send camera movements.
- Execute Liquid Galaxy commands.
- Manage KML content.
- Execute system operations.
SFTP is used when GeoSaurio needs to transfer files to Liquid Galaxy, such as images used by the different visualizations.
KML is used to display and control different elements in Liquid Galaxy, including:
- Dinosaur markers.
- Dinosaur information.
- Country information.
- Continent information.
- Dinosaur cube.
- Logos.
- Camera LookAt positions.
GeoSaurio for Liquid Galaxy is licensed under the MIT License
Developer: Josep Miquel Sert Esteban
Project: GeoSaurio
GitHub: Project
Liquid Galaxy: Website | GitHub
Google Summer of Code 2026: Website