This is the Countries Explorer App which allows users to explore countries the have intrest in. This project was written with pure Flutter. This project uses the Countries Api V3 to provide the list of contries and their detailed information.
This project is a starting point for a Flutter application.
- Countries List
- Tap country to get more details.
- Filter country results.
- Supports dark and light theme mode
- Uses Very_Good_Analysis Linter
- Localization of of each country
- Have a RiverPod state management implementation.
The figma design that will be implemented for this project can be found here
Here is the link to the app hosted on appetize.
There were no challenges faced while building this project.
- followed TDD pattern
i. Naming Convention:
Naming Convention | Effective Style | Example |
---|---|---|
Classes, enum types,typedefs,and type parameters,etensions | PascalCase | An example is HomeScreen |
Libraries, packages, directories, and source files, import prefixes | snake_case | An example is home_screen |
Class members, top-level definitions, variables, parameters, and named parameters, constants | camelCase | An example is verifiedUser |
ii. Style Rule
- Always declare return types in your methods.
- Put required named parameters first.
- Always require non-null named parameters (@required).
- Indent your code where appropriate
(e.g Use two-space indentation.)
Click Here to know more
This project will follow a MVVM pattern with a slight variation due to the peculiarities of the Flutter Framework. This project will follow the Stacked MVVM Archiecture by Dane Mackier, for flutter. Its pattern follows the concept of MVVM architectural pattern just without Two way binding.