Fidelitas University 🔵 🟡
Costa Rica 🇨🇷
Professor Ariel Ramos
GitHub repository (Public):
https://github.com/bgm050800/Reto_FlutterFlow_SQLite_Pokedex_Byron_GM
Project Pokedex (only run in IOS/Android because the filePicker package):
I created a database in SQLite containing the following tables:
Next, I loaded the database into FlutterFlow using the settings option and then utilized SQLite for handling this type of database.
I created two SQL queries in the SQLite option:
a. SelectPokedexData: Retrieves all the information from the Pokédex using left outer joins to combine the pokemon and pokemon_tipos tables.
b. ListarGeneraciones: Fetches all the generations of each Pokémon for filtering information.
For managing alerts in the application, I created custom action called "alertas" that returns a message based on the required context. It also receives a message and color to display in the dialog box, configured to allow users to close it and continue using the application.
To handle data upload into the SQLite database, I used CSV files containing Pokédex information. I implemented a upload logic using CSV files through the FilePicker package.
a. cargarGeneraciones:
b cargarTipos:
c. cargarHabilidades:
d. cargarPokemon:
e. cargarPokedex (call all the custom code to add the data in SQLite for each table):
f.consultarPokemon (this was a custom action for testing the upload of the data in the Tables but not in the final project):
For verifying the data after it has been uploaded to the Pokédex, I utilize a Boolean app state. When the custom action for uploading the information is successful, it changes the app state to True. This helps with the persistence of data in the application, allowing users to close and reopen the app while retaining the information.
Pages:
(Principal menu) here you need use the option "Cargar datos Pokedex"
(Pokedex) the view for the all data in the Pokedex
Files and Upload Order:
GeneracionesPokemon.csv: This file contains information about Pokémon generations. Each row represents a generation and may include data such as the generation number, associated region, and corresponding game versions.
PokemonTipos.csv: Here are the Pokémon types and their associated attributes. Each row represents a Pokémon type and may include data such as the type name and associated colors.
HabilidadesPokemon.csv: This file details the abilities or special moves of Pokémon. Each row represents an ability and may include data such as the ability name and description.
Pokedex.csv: This file contains information about individual Pokémon. Each row represents a Pokémon and may include data such as its Pokédex number, name, types, abilities, and other specific characteristics.
All the files necessary for the application are located in the folder named archivosPokedexCsv in the github of the project.
Example of using (Only need to upload the files once, the app save the state of the data for the Pokedex):
Load the generations:
Load types:
Load abilitys:
Load pokemon:
All data in SQLite:
View all the data using the option pokedex:
Filter the data of the pokedex using the generations: