Coder Social home page Coder Social logo

mrverdant13 / flutter_my_starred_repos Goto Github PK

View Code? Open in Web Editor NEW
14.0 14.0 2.0 1.76 MB

A demo app project made with Flutter for personal favorites GitHub repos management

Kotlin 0.03% Swift 0.09% Objective-C 0.01% Dart 92.39% HTML 0.36% CMake 1.86% C++ 4.77% C 0.17% Ruby 0.31%
clean-architecture dart flutter test-coverage

flutter_my_starred_repos's Introduction

Karlo Verde 💙 🇵🇪

Twitter: mrverdant13 LinkedIn: Karlo Verde GitHub mrverdant13

Software Developer

I am a Software Developer at Very Good Ventures 🦄 and a Flutter 💙 mentor.

I love programming 👨🏻‍💻, playing guitar 🎸, and teaching 👨🏻‍🏫.

My Open Spource Projects

  • Coverde:
    A CLI for basic coverage trace files (lcov.info) manipulation.
    Validate minimum coverage, filter trace files data by tested file paths and generate HTML coverage reports.
  • Altoke App:
    An opinionated Flutter app template.
    Create a new Flutter project with a pre-set architecture and implemented common features.

My latest presentations

My GitHub stats

Verde's GitHub Stats

Verde's Top Langs

flutter_my_starred_repos's People

Contributors

mrverdant13 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

flutter_my_starred_repos's Issues

build: add iOS flavors

Description

As described in #9, flavors provide a way to develop, test and deploy the app without conflicts with other development stages and with isolated resources, scopes and configuration.

The minimum recommended flavors are:

  • Development
  • Staging
  • Production

Requirements

  • Implement development, staging and production flavors.
  • Use different app ID per flavor.
  • Use different app label per flavor.
  • Use different app icon per flavor.
  • The build system is passing.
  • The elements affected by external dependency changes are passing.

docs: update README

Description

Update the README file.

Requirements

  • Describe what does the app do.
  • Update not supported features as not supported yet.
  • Mention the use of the lumberdash package for chained-logging, as well as the emoji_lumberdash package for pretty-logging.
  • Add OAuth integration instructions for GitHub and maybe another resource server.
  • Mention .arb files reference for more complex use cases.
  • Add instructions about app config file setup.
  • Add a note about the ci-only test tag.

fix: run manual initialization within the app zone

Description

As described in the Flutter error handling docs, manual initialization must be located inside the app zone.

Note that if in your app you call WidgetsFlutterBinding.ensureInitialized() manually to perform some initialization before calling runApp (e.g. Firebase.initializeApp()), you must call WidgetsFlutterBinding.ensureInitialized() inside runZonedGuarded

Requirements

  • Run manual initialization within the app zone.

docs: update project README

Description

Improve README to indicate features and usage instructions.

Features

  • Add a Features section.

Setup

  • Add general instructions for Android app icon setup per flavor
  • Add suggested instructions to use App Icon Generator for Android app icon generation considering variants per size.
  • Add general instructions for Android splash setup per flavor with light/dark mode.
  • Add suggested instructions to use Shape Shifter for vector splash image preview and edition.
  • Add detailed instructions for locally setting up Android signing with env variables and config files.

Usage

  • Add detailed instructions for debugging and compilation with the terminal considering flavors.

feat: add dev-friendly console logger

Description

Add a development friendly logger.

The print function output is not always that readable and does not support logging levels.
Plus, logging messages are not identifiable nor explicit. Fatal and error messages should be highlighted and should provide the stack trace for easy debugging.

Requirements

  • Support easy logging level identification.
  • Include stack trace on exceptions logging.
  • Enabled for debug mode only.

feat: add caching example

Description

Add a caching flow example.

Requirements

  • Use cached data when there is no connectivity.

build: add Flutter/Dart level flavors or envs

Description

Flavors or environments provide a way to develop, test and deploy the app without conflicts with other development stages and with isolated resources and scopes.

The minimum recommended flavors are:

  • Development
  • Staging
  • Production

Requirements

  • Implement development, staging and production flavors.
  • Use different app name per flavor.
  • The build system is passing.
  • The elements affected by external dependency changes are passing.

fix: use a secure method to provide secrets

Description

Some secrets have been pushed to the repo as reference of a bad practice.

Steps To Reproduce

  1. Go to lib\features\auth\infrastructure\data_sources\authenticator\github.dart.
  2. Look for the _clientId and the _clientSecret, which are OAuth related secrets (they have been discarded and revoked, of course).

Expected Behavior

It is expected for this kind of secrets to be provided with a secure method, such as env variables or config files.

ci: ensure up-to-date code generation

Description

Since this project takes advantage of code generation, it could be possible to face problems on CI/CD workflows due to outdated generated code.

Requirements

  • Check if generated code is up-to-date.

feat: add adaptive icon for Android

Description

Add adaptive icon for Android.

Requirements

  • Add adaptive icon for Android per flavor.
  • update docs describing Android adaptive icon.

chore: add pull requests template

Description

Create a pull requests template.

Requirements

  • Include sub-section to select type of pull request.
  • Include sub-section to confirm if there are any breaking changes.

build: configure signing in gradle (Android)

Description

As the Flutter docs and the Android docs state, to publish on the Play Store, you need to give your app a digital signature.

This process can be enabled by default to use env variables or a config file.

Requirements

  • Support env variables for keystore reference.
  • Support config file for keystore reference.
  • Should not check config files to source control.
  • Should not check keystore to source control.
  • The build system is passing.
  • The elements affected by external dependency changes are passing.

ci: add testing workflow for GitHub actions

Description

Add testing workflow for GitHub actions.

Requirements

  • Enabled for pull requests and pushes.
  • Check zero changes after formatting.
  • Analyze code with high severity.
  • Run Flutter tests.

feat: add a more complex internationalization example

Description

So far, the .arb files only show basic examples (static string values).

However, at least a couple of examples for plurals and placeholders would be useful.

Requirements

  • Add an example for placeholders.
  • Add an example for plurals support.

build: add Android flavors

Description

As described in #9, flavors provide a way to develop, test and deploy the app without conflicts with other development stages and with isolated resources, scopes and configuration.

The minimum recommended flavors are:

  • Development
  • Staging
  • Production

Requirements

  • Implement development, staging and production flavors.
  • Use different app ID per flavor.
  • Use different app label per flavor.
  • Use different app icon per flavor.
  • The build system is passing.
  • The elements affected by external dependency changes are passing.

style: use a stricter code analizer

Description

Code analyzers could help to early identify errors and improvements in source code.

Plus, if the analyzer is stricter enough, it might serve as a standardization tool for code styling.

Requirements

  • Add linting package. Suggestion: lint package.
  • Update code files to resolve linter flags.

chore: add issue templates

Description

Add issue templates to ease issues posting.

Requirements

  • Template for issues regarding bugs.
  • Template for issues regarding build system or external dependencies.
  • Template for issues regarding CI.
  • Template for issues regarding code style updates.
  • Template for issues regarding documentation.
  • Template for issues regarding feature requests.
  • Template for issues regarding performance improvements.
  • Template for issues regarding refactoring.
  • Template for issues regarding reversions.
  • Template for issues regarding tests.
  • Template for issues that do not affect source or test files.

feat: add Android splash

Description

Add Android splash screen per flavor.

Requirements

  • Use vector icon.
  • Support one splash screen per flavor.
  • Support splash screens for light and dark mode.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.