Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Polish] Define an injectable connectivity stream

Open
#5 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
84/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
dart, flutter
Domain
mobile

Research direction

Start with lib/screens/sign_in_screen.dart and inspect how the sign-in button and screen state are built; then review pubspec.yaml and the Flutter test setup. Add the monitor in lib/connectivity/connectivity_monitor.dart and cover its injected stream in test/offline_banner_test.dart. Done means offline shows the banner and disables Sign In, online removes both effects, and the Flutter checks pass.

Written by the indexing model from the issue text.

Description

polish

What to build

Define the small connection-status interface that the app’s offline banner will use. Tests should be able to send online/offline changes without relying on the phone’s real network.

Files

  • lib/connectivity/connectivity_monitor.dart (new file)
  • Starting example: lib/app.dart
    Code to add or extend: abstract interface class ConnectivityMonitor { Stream<bool> get online; Future<void> dispose(); }.

Steps

  1. Add ConnectivityMonitor with Stream online and Future dispose(). true means the device has a network connection; it does not guarantee the internet is reachable.
  2. In tests, add FakeConnectivityMonitor using StreamController.broadcast(), an online getter and emit(bool). Close the controller in dispose.
  3. Check that emit(false) then emit(true) delivers those values. This issue defines the connection source; the next one adds the real library.

Example

emit(false),emit(true) produces those two events; disposing closes the stream.

Check it works

In test/connectivity/connectivity_monitor_5_test.dart, check the example above and the failure or limit described in the steps. Run flutter test test/connectivity/connectivity_monitor_5_test.dart and flutter analyze.

References

Assign yourself before starting, or comment to claim the issue. Project setup.

Dominant language
PLpgSQL
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from DevDogsUGA/DogPack

All issues in DevDogsUGA/DogPack

Similar issues

More Mobile Dev issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.