diff --git a/.gitignore b/.gitignore index 29a3a50..ebebf35 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,7 @@ migrate_working_dir/ .pub-cache/ .pub/ /build/ +/pubspec.lock # Symbolication related app.*.symbols diff --git a/assets/explore/dot.svg b/assets/explore/dot.svg new file mode 100644 index 0000000..2c60daf --- /dev/null +++ b/assets/explore/dot.svg @@ -0,0 +1,9 @@ + + + + \ No newline at end of file diff --git a/assets/explore/notebook.svg b/assets/explore/notebook.svg new file mode 100644 index 0000000..40bfee6 --- /dev/null +++ b/assets/explore/notebook.svg @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/lib/explore/quiz.dart b/lib/explore/quiz.dart new file mode 100644 index 0000000..be0516d --- /dev/null +++ b/lib/explore/quiz.dart @@ -0,0 +1,181 @@ +import 'package:flutter/material.dart'; +import 'dart:math'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:learn/utils/constants.dart'; + +class QuizQuestion { + final String question; + final List options; + final int correctAnswerIndex; + + QuizQuestion({ + required this.question, + required this.options, + required this.correctAnswerIndex, + }); +} + +class QuizPage extends StatefulWidget { + const QuizPage({super.key}); + + @override + _QuizPageState createState() => _QuizPageState(); +} + +class _QuizPageState extends State { + late List _questions; + int _currentQuestionIndex = 0; + int _score = 0; + bool _quizCompleted = false; + String _feedbackMessage = ''; + Color _feedbackColor = Colors.transparent; + bool _answered = false; + + @override + void initState() { + super.initState(); + _questions = List.from(AppConstants.quizQuestions); + _questions.shuffle(); + if (_questions.length > 10) { + _questions = _questions.sublist(0, 10); + } + } + + void _answerQuestion(int selectedIndex) { + if (_answered) return; + + bool isCorrect = + selectedIndex == _questions[_currentQuestionIndex].correctAnswerIndex; + setState(() { + _answered = true; + if (isCorrect) { + _score++; + _feedbackMessage = 'Correct! Good job!'; + _feedbackColor = Colors.green; + } else { + _feedbackMessage = + 'Incorrect. The correct answer is: ${_questions[_currentQuestionIndex].options[_questions[_currentQuestionIndex].correctAnswerIndex]}'; + _feedbackColor = Colors.red; + } + }); + } + + void _nextQuestion() { + setState(() { + if (_currentQuestionIndex < _questions.length - 1) { + _currentQuestionIndex++; + _feedbackMessage = ''; + _feedbackColor = Colors.transparent; + _answered = false; + } else { + _quizCompleted = true; + } + }); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Quiz'), + ), + body: Padding( + padding: const EdgeInsets.all(16.0), + child: _quizCompleted + ? Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Quiz Completed! Your score is $_score/${_questions.length}', + style: const TextStyle( + fontSize: 24, fontWeight: FontWeight.bold), + textAlign: TextAlign.center, + ), + const SizedBox(height: 20), + ElevatedButton( + onPressed: () { + Navigator.of(context).pop(); + }, + child: const Text('Back to Explore'), + ), + ], + ) + : Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Question ${_currentQuestionIndex + 1}/${_questions.length}', + style: const TextStyle( + fontSize: 22, fontWeight: FontWeight.bold), + ), + const SizedBox(height: 20), + Text( + _questions[_currentQuestionIndex].question, + style: const TextStyle(fontSize: 18), + ), + const SizedBox(height: 20), + Column( + children: List.generate( + _questions[_currentQuestionIndex].options.length, + (index) => GestureDetector( + onTap: () => _answerQuestion(index), + child: Container( + margin: const EdgeInsets.symmetric(vertical: 4.0), + padding: const EdgeInsets.all(8.0), + decoration: BoxDecoration( + border: Border.all(color: Colors.black, width: 1.0), + borderRadius: BorderRadius.circular(8.0), + color: Colors.blueAccent.withOpacity(0.2), + ), + child: Row( + children: [ + SizedBox( + width: 30, + height: 30, + child: + SvgPicture.asset('assets/explore/dot.svg'), + ), + const SizedBox(width: 12.0), + Expanded( + child: Text( + _questions[_currentQuestionIndex] + .options[index], + style: const TextStyle(fontSize: 16), + ), + ), + ], + ), + ), + ), + ), + ), + const SizedBox(height: 20), + if (_feedbackMessage.isNotEmpty) + Container( + padding: const EdgeInsets.all(12.0), + decoration: BoxDecoration( + color: _feedbackColor.withOpacity(0.2), + borderRadius: BorderRadius.circular(8.0), + border: Border.all(color: _feedbackColor, width: 1.0), + ), + child: Text( + _feedbackMessage, + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: _feedbackColor, + ), + ), + ), + const SizedBox(height: 20), + if (_answered && !_quizCompleted) + ElevatedButton( + onPressed: _nextQuestion, + child: const Text('Next Question'), + ), + ], + ), + ), + ); + } +} diff --git a/lib/main.dart b/lib/main.dart index 51f21ec..99b3ed4 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -17,6 +17,7 @@ import 'package:learn/pages/modules/colours.dart'; import 'package:learn/widgets/navbar/navbar.dart'; import 'cubit/index_cubit.dart'; +import 'explore/quiz.dart'; import 'pages/home.dart'; DateTime? currentBackPressTime; @@ -69,6 +70,7 @@ class MyApp extends StatelessWidget { AllRoutes.flowerRoute: (context) => const FlowerPage(), AllRoutes.exploreRoute: (context) => const ExplorePage(), AllRoutes.favoriteRoute: (context) => const FavoritePage(), + AllRoutes.quizRoute: (context) => QuizPage(), AllRoutes.seasonRoute: (context) => SeasonsPage(), }, ); diff --git a/lib/pages/explore.dart b/lib/pages/explore.dart index 5017895..e8d0b0a 100644 --- a/lib/pages/explore.dart +++ b/lib/pages/explore.dart @@ -1,18 +1,53 @@ import 'package:flutter/material.dart'; - -// Explore Page -// All the modules will be placed here like alphabets, animals, etc... -// TODO: Implement the Explore Page +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:learn/utils/constants.dart'; class ExplorePage extends StatelessWidget { const ExplorePage({super.key}); @override Widget build(BuildContext context) { - return const Scaffold( - body: Center( - child: Text("Explore Page"), - ) + return Scaffold( + appBar: AppBar( + title: const Text('Explore'), + ), + body: ListView( + children: [ + GestureDetector( + onTap: () { + Navigator.pushNamed(context, '/quiz'); + }, + child: Container( + margin: const EdgeInsets.all(5.0), + padding: const EdgeInsets.all(8.0), + decoration: BoxDecoration( + border: Border.all(color: Colors.black, width: 1.0), + borderRadius: BorderRadius.circular(8.0), + color: Colors.blueAccent, + ), + child: Row( + children: [ + SizedBox( + width: 50, + height: 50, + child: SvgPicture.asset('assets/explore/notebook.svg'), + ), + const SizedBox(width: 28.0), + const Text( + 'Quiz', + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 30.0, + fontFamily: 'Comic', + color: Colors.white, + ), + ), + ], + ), + ), + ), + ], + ), ); } -} \ No newline at end of file +} diff --git a/lib/utils/constants.dart b/lib/utils/constants.dart index 1ad9203..87b1fb4 100644 --- a/lib/utils/constants.dart +++ b/lib/utils/constants.dart @@ -1,7 +1,7 @@ import 'dart:ui'; +import '../explore/quiz.dart'; import 'package:flutter/material.dart'; - import '../pages/modules/animals.dart'; import '../pages/modules/atoz.dart'; import '../pages/modules/birds.dart'; @@ -452,6 +452,94 @@ class AppConstants { ), ]; + static List quizQuestions = [ + // Animal Questions + QuizQuestion( + question: "What sound does a cat make?", + options: ["Meow", "Woof", "Moo", "Roar"], + correctAnswerIndex: 0, + ), + QuizQuestion( + question: "Which animal is known as the king of the jungle?", + options: ["Elephant", "Lion", "Tiger", "Deer"], + correctAnswerIndex: 1, + ), + QuizQuestion( + question: "Which animal has a long neck and eats leaves?", + options: ["Giraffe", "Bear", "Monkey", "Rabbit"], + correctAnswerIndex: 0, + ), + QuizQuestion( + question: "Which animal says 'Moo'?", + options: ["Pig", "Dog", "Cow", "Cat"], + correctAnswerIndex: 2, + ), + QuizQuestion( + question: "What color are zebra's stripes?", + options: [ + "Black and White", + "Brown and White", + "Black and Yellow", + "Gray and White" + ], + correctAnswerIndex: 0, + ), + + // Bird Questions + QuizQuestion( + question: "Which bird is known for its beautiful singing?", + options: ["Crow", "Sparrow", "Duck", "Robin"], + correctAnswerIndex: 3, + ), + QuizQuestion( + question: "Which bird is known to peck wood?", + options: ["Eagle", "Owl", "Woodpecker", "Parrot"], + correctAnswerIndex: 2, + ), + QuizQuestion( + question: "Which bird can mimic human speech?", + options: ["Duck", "Parrot", "Swan", "Eagle"], + correctAnswerIndex: 1, + ), + QuizQuestion( + question: "Which bird is known for its colorful feathers?", + options: ["Penguin", "Crow", "Peacock", "Hummingbird"], + correctAnswerIndex: 3, + ), + QuizQuestion( + question: "Which bird is a common pet known for singing?", + options: ["Ostrich", "Canary", "Sparrow", "Eagle"], + correctAnswerIndex: 1, + ), + + // Season Questions + QuizQuestion( + question: "In which season do flowers bloom?", + options: ["Winter", "Spring", "Autumn", "Summer"], + correctAnswerIndex: 1, + ), + QuizQuestion( + question: "Which season is the hottest?", + options: ["Winter", "Spring", "Autumn", "Summer"], + correctAnswerIndex: 3, + ), + QuizQuestion( + question: "During which season do leaves fall from trees?", + options: ["Winter", "Spring", "Autumn", "Summer"], + correctAnswerIndex: 2, + ), + QuizQuestion( + question: "Which season is the coldest?", + options: ["Winter", "Spring", "Autumn", "Summer"], + correctAnswerIndex: 0, + ), + QuizQuestion( + question: "In which season do we often see snow?", + options: ["Winter", "Spring", "Autumn", "Summer"], + correctAnswerIndex: 0, + ), + ]; + static List seasons = [ Season( name: 'Spring', diff --git a/lib/utils/routes.dart b/lib/utils/routes.dart index 9765aa2..59435bd 100644 --- a/lib/utils/routes.dart +++ b/lib/utils/routes.dart @@ -12,5 +12,6 @@ class AllRoutes { static String aboutRoute = "/about"; static String colourRoute = "/colours"; static String flowerRoute = "/flowers"; + static String quizRoute = "/quiz"; static String seasonRoute = "/seasons"; } diff --git a/pubspec.lock b/pubspec.lock deleted file mode 100644 index d0eaeb1..0000000 --- a/pubspec.lock +++ /dev/null @@ -1,682 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - adaptive_theme: - dependency: "direct main" - description: - name: adaptive_theme - sha256: f4ee609b464e5efc68131d9d15ba9aa1de4e3b5ede64be17781c6e19a52d637d - url: "https://pub.dev" - source: hosted - version: "3.6.0" - args: - dependency: transitive - description: - name: args - sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" - url: "https://pub.dev" - source: hosted - version: "2.5.0" - async: - dependency: transitive - description: - name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" - url: "https://pub.dev" - source: hosted - version: "2.11.0" - audio_session: - dependency: transitive - description: - name: audio_session - sha256: a49af9981eec5d7cd73b37bacb6ee73f8143a6a9f9bd5b6021e6c346b9b6cf4e - url: "https://pub.dev" - source: hosted - version: "0.1.19" - bloc: - dependency: transitive - description: - name: bloc - sha256: "106842ad6569f0b60297619e9e0b1885c2fb9bf84812935490e6c5275777804e" - url: "https://pub.dev" - source: hosted - version: "8.1.4" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - card_swiper: - dependency: "direct main" - description: - name: card_swiper - sha256: "21e52a144decbf0054e7cfed8bbe46fc89635e6c86b767eaccfe7d5aeba32528" - url: "https://pub.dev" - source: hosted - version: "3.0.1" - characters: - dependency: transitive - description: - name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" - url: "https://pub.dev" - source: hosted - version: "1.3.0" - clock: - dependency: transitive - description: - name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf - url: "https://pub.dev" - source: hosted - version: "1.1.1" - collection: - dependency: transitive - description: - name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a - url: "https://pub.dev" - source: hosted - version: "1.18.0" - crypto: - dependency: transitive - description: - name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab - url: "https://pub.dev" - source: hosted - version: "3.0.3" - fake_async: - dependency: transitive - description: - name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" - url: "https://pub.dev" - source: hosted - version: "1.3.1" - ffi: - dependency: transitive - description: - name: ffi - sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - file: - dependency: transitive - description: - name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" - url: "https://pub.dev" - source: hosted - version: "7.0.0" - fixnum: - dependency: transitive - description: - name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" - url: "https://pub.dev" - source: hosted - version: "1.1.0" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_bloc: - dependency: "direct main" - description: - name: flutter_bloc - sha256: f0ecf6e6eb955193ca60af2d5ca39565a86b8a142452c5b24d96fb477428f4d2 - url: "https://pub.dev" - source: hosted - version: "8.1.5" - flutter_card_swiper: - dependency: "direct main" - description: - name: flutter_card_swiper - sha256: "880ad669017154d6d1f8c3abd861db08af97b3b7b0f7d7d5cbde690a9253811d" - url: "https://pub.dev" - source: hosted - version: "7.0.1" - flutter_lints: - dependency: "direct dev" - description: - name: flutter_lints - sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04 - url: "https://pub.dev" - source: hosted - version: "2.0.3" - flutter_svg: - dependency: "direct main" - description: - name: flutter_svg - sha256: "7b4ca6cf3304575fe9c8ec64813c8d02ee41d2afe60bcfe0678bcb5375d596a2" - url: "https://pub.dev" - source: hosted - version: "2.0.10+1" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - flutter_tts: - dependency: "direct main" - description: - name: flutter_tts - sha256: cbb3fd43b946e62398560235469e6113e4fe26c40eab1b7cb5e7c417503fb3a8 - url: "https://pub.dev" - source: hosted - version: "3.8.5" - flutter_web_plugins: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - fluttertoast: - dependency: "direct main" - description: - name: fluttertoast - sha256: "81b68579e23fcbcada2db3d50302813d2371664afe6165bc78148050ab94bf66" - url: "https://pub.dev" - source: hosted - version: "8.2.5" - google_fonts: - dependency: "direct main" - description: - name: google_fonts - sha256: b1ac0fe2832c9cc95e5e88b57d627c5e68c223b9657f4b96e1487aa9098c7b82 - url: "https://pub.dev" - source: hosted - version: "6.2.1" - google_nav_bar: - dependency: "direct main" - description: - name: google_nav_bar - sha256: "1c8e3882fa66ee7b74c24320668276ca23affbd58f0b14a24c1e5590f4d07ab0" - url: "https://pub.dev" - source: hosted - version: "5.0.6" - http: - dependency: transitive - description: - name: http - sha256: a2bbf9d017fcced29139daa8ed2bba4ece450ab222871df93ca9eec6f80c34ba - url: "https://pub.dev" - source: hosted - version: "1.2.0" - http_parser: - dependency: transitive - description: - name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - just_audio: - dependency: "direct main" - description: - name: just_audio - sha256: b7cb6bbf3750caa924d03f432ba401ec300fd90936b3f73a9b33d58b1e96286b - url: "https://pub.dev" - source: hosted - version: "0.9.37" - just_audio_platform_interface: - dependency: transitive - description: - name: just_audio_platform_interface - sha256: c3dee0014248c97c91fe6299edb73dc4d6c6930a2f4f713579cd692d9e47f4a1 - url: "https://pub.dev" - source: hosted - version: "4.2.2" - just_audio_web: - dependency: transitive - description: - name: just_audio_web - sha256: d91a7dcc3e775b5bbc5123f82220f9b69a1cf7be4328cf49abf8a4952b3f2de4 - url: "https://pub.dev" - source: hosted - version: "0.4.10" - leak_tracker: - dependency: transitive - description: - name: leak_tracker - sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" - url: "https://pub.dev" - source: hosted - version: "10.0.4" - leak_tracker_flutter_testing: - dependency: transitive - description: - name: leak_tracker_flutter_testing - sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" - url: "https://pub.dev" - source: hosted - version: "3.0.3" - leak_tracker_testing: - dependency: transitive - description: - name: leak_tracker_testing - sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" - url: "https://pub.dev" - source: hosted - version: "3.0.1" - lints: - dependency: transitive - description: - name: lints - sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - matcher: - dependency: transitive - description: - name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb - url: "https://pub.dev" - source: hosted - version: "0.12.16+1" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" - url: "https://pub.dev" - source: hosted - version: "0.8.0" - meta: - dependency: transitive - description: - name: meta - sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" - url: "https://pub.dev" - source: hosted - version: "1.12.0" - nested: - dependency: transitive - description: - name: nested - sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" - url: "https://pub.dev" - source: hosted - version: "1.0.0" - path: - dependency: transitive - description: - name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" - url: "https://pub.dev" - source: hosted - version: "1.9.0" - path_parsing: - dependency: transitive - description: - name: path_parsing - sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf - url: "https://pub.dev" - source: hosted - version: "1.0.1" - path_provider: - dependency: transitive - description: - name: path_provider - sha256: c9e7d3a4cd1410877472158bee69963a4579f78b68c65a2b7d40d1a7a88bb161 - url: "https://pub.dev" - source: hosted - version: "2.1.3" - path_provider_android: - dependency: transitive - description: - name: path_provider_android - sha256: a248d8146ee5983446bf03ed5ea8f6533129a12b11f12057ad1b4a67a2b3b41d - url: "https://pub.dev" - source: hosted - version: "2.2.4" - path_provider_foundation: - dependency: transitive - description: - name: path_provider_foundation - sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 - url: "https://pub.dev" - source: hosted - version: "2.4.0" - path_provider_linux: - dependency: transitive - description: - name: path_provider_linux - sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 - url: "https://pub.dev" - source: hosted - version: "2.2.1" - path_provider_platform_interface: - dependency: transitive - description: - name: path_provider_platform_interface - sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - path_provider_windows: - dependency: transitive - description: - name: path_provider_windows - sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170" - url: "https://pub.dev" - source: hosted - version: "2.2.1" - petitparser: - dependency: transitive - description: - name: petitparser - sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27 - url: "https://pub.dev" - source: hosted - version: "6.0.2" - platform: - dependency: transitive - description: - name: platform - sha256: "12220bb4b65720483f8fa9450b4332347737cf8213dd2840d8b2c823e47243ec" - url: "https://pub.dev" - source: hosted - version: "3.1.4" - plugin_platform_interface: - dependency: transitive - description: - name: plugin_platform_interface - sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" - url: "https://pub.dev" - source: hosted - version: "2.1.8" - provider: - dependency: transitive - description: - name: provider - sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c - url: "https://pub.dev" - source: hosted - version: "6.1.2" - rxdart: - dependency: transitive - description: - name: rxdart - sha256: "0c7c0cedd93788d996e33041ffecda924cc54389199cde4e6a34b440f50044cb" - url: "https://pub.dev" - source: hosted - version: "0.27.7" - shared_preferences: - dependency: transitive - description: - name: shared_preferences - sha256: d3bbe5553a986e83980916ded2f0b435ef2e1893dfaa29d5a7a790d0eca12180 - url: "https://pub.dev" - source: hosted - version: "2.2.3" - shared_preferences_android: - dependency: transitive - description: - name: shared_preferences_android - sha256: "1ee8bf911094a1b592de7ab29add6f826a7331fb854273d55918693d5364a1f2" - url: "https://pub.dev" - source: hosted - version: "2.2.2" - shared_preferences_foundation: - dependency: transitive - description: - name: shared_preferences_foundation - sha256: "0a8a893bf4fd1152f93fec03a415d11c27c74454d96e2318a7ac38dd18683ab7" - url: "https://pub.dev" - source: hosted - version: "2.4.0" - shared_preferences_linux: - dependency: transitive - description: - name: shared_preferences_linux - sha256: "9f2cbcf46d4270ea8be39fa156d86379077c8a5228d9dfdb1164ae0bb93f1faa" - url: "https://pub.dev" - source: hosted - version: "2.3.2" - shared_preferences_platform_interface: - dependency: transitive - description: - name: shared_preferences_platform_interface - sha256: "22e2ecac9419b4246d7c22bfbbda589e3acf5c0351137d87dd2939d984d37c3b" - url: "https://pub.dev" - source: hosted - version: "2.3.2" - shared_preferences_web: - dependency: transitive - description: - name: shared_preferences_web - sha256: "7b15ffb9387ea3e237bb7a66b8a23d2147663d391cafc5c8f37b2e7b4bde5d21" - url: "https://pub.dev" - source: hosted - version: "2.2.2" - shared_preferences_windows: - dependency: transitive - description: - name: shared_preferences_windows - sha256: "841ad54f3c8381c480d0c9b508b89a34036f512482c407e6df7a9c4aa2ef8f59" - url: "https://pub.dev" - source: hosted - version: "2.3.2" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_span: - dependency: transitive - description: - name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" - url: "https://pub.dev" - source: hosted - version: "1.10.0" - sprintf: - dependency: transitive - description: - name: sprintf - sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" - url: "https://pub.dev" - source: hosted - version: "7.0.0" - stack_trace: - dependency: transitive - description: - name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" - url: "https://pub.dev" - source: hosted - version: "1.11.1" - stream_channel: - dependency: transitive - description: - name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 - url: "https://pub.dev" - source: hosted - version: "2.1.2" - string_scanner: - dependency: transitive - description: - name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 - url: "https://pub.dev" - source: hosted - version: "1.2.1" - test_api: - dependency: transitive - description: - name: test_api - sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" - url: "https://pub.dev" - source: hosted - version: "0.7.0" - typed_data: - dependency: transitive - description: - name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c - url: "https://pub.dev" - source: hosted - version: "1.3.2" - url_launcher: - dependency: "direct main" - description: - name: url_launcher - sha256: "6ce1e04375be4eed30548f10a315826fd933c1e493206eab82eed01f438c8d2e" - url: "https://pub.dev" - source: hosted - version: "6.2.6" - url_launcher_android: - dependency: transitive - description: - name: url_launcher_android - sha256: "360a6ed2027f18b73c8d98e159dda67a61b7f2e0f6ec26e86c3ada33b0621775" - url: "https://pub.dev" - source: hosted - version: "6.3.1" - url_launcher_ios: - dependency: transitive - description: - name: url_launcher_ios - sha256: "7068716403343f6ba4969b4173cbf3b84fc768042124bc2c011e5d782b24fe89" - url: "https://pub.dev" - source: hosted - version: "6.3.0" - url_launcher_linux: - dependency: transitive - description: - name: url_launcher_linux - sha256: ab360eb661f8879369acac07b6bb3ff09d9471155357da8443fd5d3cf7363811 - url: "https://pub.dev" - source: hosted - version: "3.1.1" - url_launcher_macos: - dependency: transitive - description: - name: url_launcher_macos - sha256: "9a1a42d5d2d95400c795b2914c36fdcb525870c752569438e4ebb09a2b5d90de" - url: "https://pub.dev" - source: hosted - version: "3.2.0" - url_launcher_platform_interface: - dependency: transitive - description: - name: url_launcher_platform_interface - sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" - url: "https://pub.dev" - source: hosted - version: "2.3.2" - url_launcher_web: - dependency: transitive - description: - name: url_launcher_web - sha256: fff0932192afeedf63cdd50ecbb1bc825d31aed259f02bb8dba0f3b729a5e88b - url: "https://pub.dev" - source: hosted - version: "2.2.3" - url_launcher_windows: - dependency: transitive - description: - name: url_launcher_windows - sha256: ecf9725510600aa2bb6d7ddabe16357691b6d2805f66216a97d1b881e21beff7 - url: "https://pub.dev" - source: hosted - version: "3.1.1" - uuid: - dependency: transitive - description: - name: uuid - sha256: "814e9e88f21a176ae1359149021870e87f7cddaf633ab678a5d2b0bff7fd1ba8" - url: "https://pub.dev" - source: hosted - version: "4.4.0" - vector_graphics: - dependency: transitive - description: - name: vector_graphics - sha256: "32c3c684e02f9bc0afb0ae0aa653337a2fe022e8ab064bcd7ffda27a74e288e3" - url: "https://pub.dev" - source: hosted - version: "1.1.11+1" - vector_graphics_codec: - dependency: transitive - description: - name: vector_graphics_codec - sha256: c86987475f162fadff579e7320c7ddda04cd2fdeffbe1129227a85d9ac9e03da - url: "https://pub.dev" - source: hosted - version: "1.1.11+1" - vector_graphics_compiler: - dependency: transitive - description: - name: vector_graphics_compiler - sha256: "12faff3f73b1741a36ca7e31b292ddeb629af819ca9efe9953b70bd63fc8cd81" - url: "https://pub.dev" - source: hosted - version: "1.1.11+1" - vector_math: - dependency: transitive - description: - name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - vm_service: - dependency: transitive - description: - name: vm_service - sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" - url: "https://pub.dev" - source: hosted - version: "14.2.1" - web: - dependency: transitive - description: - name: web - sha256: "4188706108906f002b3a293509234588823c8c979dc83304e229ff400c996b05" - url: "https://pub.dev" - source: hosted - version: "0.4.2" - win32: - dependency: transitive - description: - name: win32 - sha256: a79dbe579cb51ecd6d30b17e0cae4e0ea15e2c0e66f69ad4198f22a6789e94f4 - url: "https://pub.dev" - source: hosted - version: "5.5.1" - xdg_directories: - dependency: transitive - description: - name: xdg_directories - sha256: faea9dee56b520b55a566385b84f2e8de55e7496104adada9962e0bd11bcff1d - url: "https://pub.dev" - source: hosted - version: "1.0.4" - xml: - dependency: transitive - description: - name: xml - sha256: b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226 - url: "https://pub.dev" - source: hosted - version: "6.5.0" -sdks: - dart: ">=3.4.0 <4.0.0" - flutter: ">=3.19.2" diff --git a/pubspec.yaml b/pubspec.yaml index b16c984..934ec28 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -77,6 +77,7 @@ flutter: - assets/solar/ - assets/images/colours/ - assets/images/flowers/ + - assets/explore/ - assets/seasons/