Open-source project
hungps/flutter_pokedex avatar
hungps/flutter_pokedex

hungps/flutter_pokedex: a Flutter Pokedex with Clean Architecture and heavy animation work

Pokedex app built with Flutter (with lots of animations) using Clean Architecture

2,531 stars572 forksDartNOASSERTION

At a glance

What is it?
A Flutter sample app that builds a Pokedex around Clean Architecture and animated transitions. It is a reference for Flutter UI and layering, not a packaged product you install from a store.
Who is it for?
Adopt this repository if you want a readable Flutter example of Clean Architecture with animation-heavy screens, and you are willing to read the code rather than a manual. Do not adopt it as a finished Pokedex product: the README lists unfinished items such as grid loading animation, a Moves tab with no design, and missing data in the About tab.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 180 days ago.
What is it written in?
Mainly Dart, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What hungps/flutter_pokedex is for

This is a Pokedex app built with Flutter, and the repository description adds the two things that define it: lots of animations and Clean Architecture. That combination sets the audience. It is for Flutter developers who want to see how a multi-screen app with tabbed detail pages, a floating action button, and expandable panels is put together, and who want the layering visible in the folder structure rather than buried in a single widget file. The topics list confirms the framing: clean-architecture, clean-code, flutter-ui, flutter-examples, flutter-demo. The README also credits the design source, a Pokedex App design by Saepul Nahwan on Dribbble, and a Pikachu gif by Sabri Bey. So the visual target is a specific designer's mockup, not an original product spec. If you are looking for a published app to install on a phone, this is the wrong expectation. It is source you build and run yourself, and the README's own todo list shows which screens are done and which are not.

How the app is layered and where the screens live

The repository layout tells you the shape of the project before you open a single Dart file. There is a lib/ directory for the app code, a test/ directory, and platform folders for android, ios, linux, macos, web, and windows. The presence of all six platform directories means the project is set up for Flutter's cross-platform targets, not just mobile. Assets sit in assets/, and the screenshots/ directory holds the preview images the README embeds, from home.png through pokemon-info-expanded.png. The README's todo list is effectively a map of the feature surface: Home with a Sliver effect, Pokedex with a floating action button and its animation, load more, and a Pokemon Info screen with About, Base Stats, and Evolution tabs, an expandable tab area, and animations. Two items are unchecked, and they matter. Pokedex grid loading animation is not done, and Pokemon Info Moves has no design. A third unchecked item says the About tab is missing data. The README does not document the class-level structure of the Clean Architecture layers, so anyone expecting a written explanation of the data, domain, and presentation boundaries will have to infer them from lib/. The repository name and topics promise Clean Architecture, but the README itself stays at the feature level.

Installing hungps/flutter_pokedex and running it

The README gives three installation steps and no more. First, install Flutter on your machine; the README points to the Flutter install docs and says the compatible Flutter version can be seen in the .fvmrc file. That file is at the repository root, and it is the authoritative version pin. Read it before you do anything else, because a mismatch between your local Flutter and the pinned version is the most likely source of build friction. Then open the project folder in a terminal and fetch dependencies. The README shows this command:

bash
flutter pub get

After that resolves, the README says to run the debug app on an emulator or phone:

bash
flutter run

That is the whole documented path. There is no separate build step in the README, no flavor, no API key, and no environment variable to set. The app is a debug build by default under these instructions. The README does not document release builds, code signing, or store packaging, so treat those as outside what the project tells you. It also does not document a web or desktop run command, even though the repository contains web, linux, macos, and windows folders. If you want to try a desktop target, the folders exist, but you are working from the folder layout rather than from written instructions.

What is unfinished, and where the project is the wrong tool

The README's todo list is unusually honest, and it should shape your decision. Three items remain unchecked. The Pokedex grid loading animation is not implemented, so the grid does not have the loading treatment the rest of the UI has. The Pokemon Info Moves tab has no design, which means that tab is not a place to look for a pattern to copy. The About tab is missing data. On top of that, the README notes that more Pokemons and Base Stats and Evolution data were added by a contributor, balvinderz, which suggests the dataset was extended over time rather than generated from a single complete source. The README does not say where the Pokemon data comes from, whether it is bundled in assets/ or fetched over the network, or how it is refreshed. If your goal is a data pipeline for Pokemon information, this repository does not document one. The other mismatch is scope: this is a demo app with a designer's mockup as its target. If you need a maintained, feature-complete Pokedex you can ship, the unchecked todos are a direct signal that it is not that. It is also not a good fit if you want written architecture documentation, because the README describes features, not layers.

How it compares with Flutter sample catalogs and Compose ports

The natural alternative is not another Pokedex library but the wider pool of Flutter sample apps and catalogs, the kind collected under lists such as Awesome Flutter, whose badge sits at the top of this README. Those collections give you many small demos, each focused on one widget or one interaction. This repository is the opposite trade: one app, many screens, with the animation and layering work concentrated in a single codebase you have to read end to end. The second alternative is a Pokedex built with Jetpack Compose, a different UI toolkit on a different platform. If your team writes Kotlin and Android, a Compose Pokedex matches your stack, and this Flutter project does not, even though the feature list looks similar. The third comparison is Flutter's own catalog of samples and the official documentation, which explain individual mechanisms in isolation. Here the mechanisms are combined, which is more realistic and harder to navigate. Pick this repository when you want the combined case. Pick a catalog or the official docs when you want one concept explained cleanly.

Maintenance, licence and upgrade cost

The repository is not archived, and the last push was on 2026-04-03. That is roughly six months before the end of September 2026, so the project is not abandoned, but the README gives no release history and no changelog, and the recent releases list is empty. There is no versioned artifact to upgrade against, which changes what upgrade cost means here. You are not bumping a dependency version; you are re-reading diffs in a codebase you forked or copied. The version pin in .fvmrc is the thing you will revisit most often, because Flutter's own releases move and the pinned version does not move with them. The build configuration includes a build.yaml and an analysis_options.yaml, so generated code and lint rules are part of the setup, and a Flutter upgrade can surface issues in either. On licensing, the README states that all code is available under the MIT and Apache 2.0 licenses and points to the LICENSE file, while the license badges show both. The repository's license is reported as NOASSERTION, which means the platform could not classify it automatically. Read the LICENSE file itself to see how the two licenses are applied and to whom, and note that the README credits third-party design and artwork, which are separate from the code licence. This is not legal advice.

Editorial conclusion

Adopt this repository if you want a readable Flutter example of Clean Architecture with animation-heavy screens, and you are willing to read the code rather than a manual. Do not adopt it as a finished Pokedex product: the README lists unfinished items such as grid loading animation, a Moves tab with no design, and missing data in the About tab. Before you commit time, check the .fvmrc Flutter version against your local SDK, run flutter pub get, and confirm the LICENSE file covers both the MIT and Apache 2.0 badges the README shows.

Frequently asked questions

How do I install and run hungps/flutter_pokedex?

Install Flutter, check the compatible version in the .fvmrc file, then run flutter pub get in the project folder and flutter run to launch the debug app on an emulator or phone. The README lists those three steps and nothing else.

Is hungps/flutter_pokedex free to use?

The README states that all the code is available under the MIT and Apache 2.0 licenses and points to the LICENSE file. The repository's license is reported as NOASSERTION, so read the LICENSE file to see how the two licences are applied.

Which screens in hungps/flutter_pokedex are unfinished?

The README's todo list leaves three items unchecked: the Pokedex grid loading animation, the Pokemon Info Moves tab, which has no design, and missing data in the About tab.

Is hungps/flutter_pokedex still maintained?

The repository is not archived and the last push was on 2026-04-03. The README has no changelog and the recent releases list is empty, so there is no versioned release to track.

Official sources

  1. hungps/flutter_pokedex on GitHub
  2. Issues
  3. Project website
  4. README
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/hungps-flutter-pokedex.svg)](https://hysenlabs.com/projects/hungps-flutter-pokedex)