Skip to content

saugad88/questly_app

Repository files navigation

Questly

A small Flutter app for managing daily "quests" — short tasks the user can complete to earn points.

Questly is a lightweight mobile app (Flutter) that provides a set of built-in quests, lets users add custom quests with configurable points, keeps track of completion state and total points using local storage, integrates simple local notifications, plays a completion sound, and includes a profile and social/account pages.

Key features

  • Predefined quests (journal entry, visit a landmark, take a meal photo, physical activities, etc.)
  • Add custom quests with custom point values
  • Persisted data using shared_preferences (username, quests, checks, points)
  • Points awarded when quests are completed; points are stored locally
  • Simple daily notification scaffold (using flutter_local_notifications + timezone)
  • Completion sound effect (assets/sound/checkSound.wav) using audioplayers
  • Basic location-based verification for certain quests (uses geolocator)

Tech stack & notable dependencies

  • Flutter (Dart SDK >= 3.6.1 per pubspec.yaml)
  • image_picker — take/select photos
  • audioplayers — play local sound effects
  • timezone + flutter_local_notifications — schedule and show local notifications
  • shared_preferences — persist user settings and quest state
  • geolocator — optional location-based quests

See pubspec.yaml for exact versions.

Getting started

Prerequisites

Clone the repo and install dependencies:

git clone <repo-url>
cd questly
flutter pub get

Run on an emulator or device:

# Run on iOS simulator
flutter run

# Run on Android emulator
flutter run -d <device-id>

Notes

  • The app stores a username and points in SharedPreferences. To reset app state during development, uninstall the app from the device/emulator or clear app data.
  • Local notifications require additional platform setup (Android notification channel and iOS permissions). The code includes an initialization scaffold in lib/main.dart but you may need to configure AndroidManifest / Info.plist for full behavior.

Project structure (high level)

  • lib/ — main Dart source files: main.dart, pages (login_page.dart, profile.dart, acount_page.dart, social_page.dart, etc.), and models
  • assets/ — sound effects and other raw assets
  • images/ — image assets used by the app
  • android/, ios/ — platform-specific projects

About

Questly is a Flutter app that turns daily goals into fun quests. Users can track progress, add photos, and earn points for completed tasks. With a clean interface, profile stats, and local data storage, Questly makes personal growth and productivity engaging and rewarding.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors