From 65b7388b9e87223b368aa9733551d828ba13e1ad Mon Sep 17 00:00:00 2001 From: DURGA PRASAD <21MH1A0560@acoe.edu.in> Date: Fri, 3 Nov 2023 14:51:10 +0530 Subject: [PATCH 1/4] push --- lib/main.dart | 3 --- 1 file changed, 3 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 8d06b5e..61c6a9c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,6 +1,3 @@ -// ignore: duplicate_ignore -// ignore_for_file: camel_case_types - import 'package:Learner/aptitude.dart'; import 'package:Learner/splashscreen.dart'; import 'package:animated_text_kit/animated_text_kit.dart'; From 7e75b95866e926525cf11365138497c425bc11a8 Mon Sep 17 00:00:00 2001 From: DURGA PRASAD <21MH1A0560@acoe.edu.in> Date: Sat, 4 Nov 2023 11:31:25 +0530 Subject: [PATCH 2/4] push --- lib/Screens/quizscreen.dart | 142 ++-- lib/aptitude.dart | 1040 +++++++++++++++++++++++- lib/data/ece/digitalelectronics.dart | 203 +++++ lib/data/electrical/ac&dccircuits.dart | 255 ++++++ lib/main.dart | 528 +++++++----- 5 files changed, 1864 insertions(+), 304 deletions(-) create mode 100644 lib/data/ece/digitalelectronics.dart create mode 100644 lib/data/electrical/ac&dccircuits.dart diff --git a/lib/Screens/quizscreen.dart b/lib/Screens/quizscreen.dart index bfcce4f..24647da 100644 --- a/lib/Screens/quizscreen.dart +++ b/lib/Screens/quizscreen.dart @@ -4,7 +4,6 @@ import 'package:flutter/material.dart'; import '../models/statistics.dart'; - class quizapp extends StatefulWidget { const quizapp({super.key}); @@ -14,22 +13,23 @@ class quizapp extends StatefulWidget { class _quizappState extends State { int? selectedAnswerIndex; - int questionIndex=0; - int score=0; - bool isSolutionVisible=false; + int questionIndex = 0; + int score = 0; + bool isSolutionVisible = false; - void pickAnswer(int value){ + void pickAnswer(int value) { setState(() { selectedAnswerIndex = value; final question = questions[questionIndex]; - if (selectedAnswerIndex == question.correctAnswerIndex){ + if (selectedAnswerIndex == question.correctAnswerIndex) { score++; } }); } - void goToNextQuestion(){ + + void goToNextQuestion() { setState(() { - if(questionIndex < questions.length - 1){ + if (questionIndex < questions.length - 1) { questionIndex++; selectedAnswerIndex = null; } @@ -37,14 +37,15 @@ class _quizappState extends State { } void toggleSolutionVisibility() { - setState(() { - isSolutionVisible = !isSolutionVisible; - }); + setState(() { + isSolutionVisible = !isSolutionVisible; + }); } + @override Widget build(BuildContext context) { - final question =questions[questionIndex]; - bool isLastQuestion = questionIndex == questions.length-1; + final question = questions[questionIndex]; + bool isLastQuestion = questionIndex == questions.length - 1; return Scaffold( backgroundColor: Colors.deepPurple, appBar: AppBar( @@ -56,67 +57,68 @@ class _quizappState extends State { child: Column( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ - Text("${question.question}", - style: TextStyle(fontSize: 23, - color: Colors.white, - ), + Text( + "${question.question}", + style: TextStyle( + fontSize: 23, + color: Colors.white, + ), textAlign: TextAlign.start, ), ListView.builder( itemCount: question.options.length, shrinkWrap: true, - itemBuilder: (context,index){ + itemBuilder: (context, index) { return GestureDetector( - onTap: selectedAnswerIndex == null ? () => pickAnswer(index) : null, + onTap: selectedAnswerIndex == null + ? () => pickAnswer(index) + : null, child: AnswerCard( - currentIndex : index, - question:question.options[index], - isSelected:selectedAnswerIndex == index, - selectedAnswerIndex:selectedAnswerIndex, - correctAnswerIndex:question.correctAnswerIndex, + currentIndex: index, + question: question.options[index], + isSelected: selectedAnswerIndex == index, + selectedAnswerIndex: selectedAnswerIndex, + correctAnswerIndex: question.correctAnswerIndex, ), ); - } + }), + isLastQuestion + ? RectunglerButton( + onPressed: () {}, + lable: 'Finish', + ) + : RectunglerButton( + onPressed: + selectedAnswerIndex != null && !isSolutionVisible + ? goToNextQuestion + : null, + lable: 'Next', + ), + Column( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + GestureDetector( + onTap: toggleSolutionVisibility, + child: Text( + 'Solution', + style: TextStyle( + decoration: TextDecoration.underline, + color: Colors.blue, + ), + ), + ), + ], + ), + Visibility( + visible: isSolutionVisible, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Text( + '${question.Solution}', + style: TextStyle(fontSize: 18), + ), + ), ), - - - isLastQuestion ? - RectunglerButton( - onPressed: (){}, - lable: 'Finish', - ) - : RectunglerButton( - onPressed: selectedAnswerIndex != null && !isSolutionVisible ? goToNextQuestion : null, - lable: 'Next', - ), - - - Column( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - GestureDetector( - onTap: toggleSolutionVisibility, - child: Text( - 'Solution', - style: TextStyle( - decoration: TextDecoration.underline, - color: Colors.blue, - ), - ), - ), - ], - ), - Visibility( - visible: isSolutionVisible, - child: Padding( - padding: const EdgeInsets.all(16.0), - child: Text( - '${question.Solution}', - style: TextStyle(fontSize: 18), - ), - ), - ), - ], ), ), @@ -124,15 +126,3 @@ class _quizappState extends State { ); } } - - - - - - - - - - - - diff --git a/lib/aptitude.dart b/lib/aptitude.dart index b6bca47..cb7e858 100644 --- a/lib/aptitude.dart +++ b/lib/aptitude.dart @@ -146,14 +146,12 @@ class _AptitudeState extends State { } } - class tiles { final String imgpath; final String text; tiles({required this.imgpath, required this.text}); } - class Electrical extends StatefulWidget { const Electrical({super.key}); @@ -162,7 +160,153 @@ class Electrical extends StatefulWidget { } class _ElectricalState extends State { - List t = [ + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9054/9054104.png', + text: 'Ac & Dc circuits'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Electrical vehicle(EV) technology'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Electrical grid & Smart grid technology'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Electrical insulation & dielectric materials'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'High voltage engineering'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Lightning Protection & grounding system'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Robotics & automation in electrical engineering'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Transformers & their application'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Circuit analysis'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Controlsystems'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Digitalelectronics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Electricalpowergenerationanddistributionsystem'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Electricmachines'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Electromagnetic fields & waves'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Microcontrollersandmicroprocessor'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Power distribution and transmission'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Power system'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Powerelectronics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Basics of electrical circuits'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Semi conductor devices and applications'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Aptitude', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Logical extends StatefulWidget { + const Logical({super.key}); + + @override + State createState() => _LogicalState(); +} + +class _LogicalState extends State { + List t = [ tiles( imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', text: 'Statistics'), @@ -228,7 +372,7 @@ class _ElectricalState extends State { ]; @override Widget build(BuildContext context) { - return MaterialApp( + return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( backgroundColor: Colors.black, @@ -300,14 +444,13 @@ class _ElectricalState extends State { } } -class Logical extends StatefulWidget { - const Logical({super.key}); - +class Verbal extends StatefulWidget { + const Verbal({super.key}); @override - State createState() => _LogicalState(); + State createState() => _VerbalState(); } -class _LogicalState extends State { +class _VerbalState extends State { List t = [ tiles( imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', @@ -372,9 +515,886 @@ class _LogicalState extends State { imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', text: 'Time & Work'), ]; + @override Widget build(BuildContext context) { - return MaterialApp( + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Aptitude', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Electronics extends StatefulWidget { + const Electronics({super.key}); + + @override + State createState() => _ElectronicsState(); +} + +class _ElectronicsState extends State { + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', + text: 'Statistics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Ratio & Propotion'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Logarithms'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Profit & Loss'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'Averages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Simple Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Time & Distance'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Lcm & Hcf'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Compound Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Number System'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Problems On Ages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Mixtures And Alligations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Percentages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Partnership'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Data Interpretation'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Permutations & Combinations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Probability'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Mensuration-1'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Mensuration-2'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Time & Work'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Aptitude', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Civil extends StatefulWidget { + const Civil({super.key}); + + @override + State createState() => _CivilState(); +} + +class _CivilState extends State { + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', + text: 'Statistics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Ratio & Propotion'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Logarithms'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Profit & Loss'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'Averages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Simple Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Time & Distance'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Lcm & Hcf'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Compound Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Number System'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Problems On Ages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Mixtures And Alligations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Percentages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Partnership'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Data Interpretation'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Permutations & Combinations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Probability'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Mensuration-1'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Mensuration-2'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Time & Work'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Electrical Engineering', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Mechanical extends StatefulWidget { + const Mechanical({super.key}); + + @override + State createState() => _MechanicalState(); +} + +class _MechanicalState extends State { + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', + text: 'Statistics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Ratio & Propotion'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Logarithms'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Profit & Loss'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'Averages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Simple Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Time & Distance'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Lcm & Hcf'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Compound Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Number System'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Problems On Ages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Mixtures And Alligations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Percentages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Partnership'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Data Interpretation'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Permutations & Combinations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Probability'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Mensuration-1'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Mensuration-2'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Time & Work'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Aptitude', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Agriculture extends StatefulWidget { + const Agriculture({super.key}); + + @override + State createState() => _AgricultureState(); +} + +class _AgricultureState extends State { + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', + text: 'Statistics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Ratio & Propotion'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Logarithms'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Profit & Loss'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'Averages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Simple Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Time & Distance'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Lcm & Hcf'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Compound Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Number System'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Problems On Ages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Mixtures And Alligations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Percentages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Partnership'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Data Interpretation'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Permutations & Combinations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Probability'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Mensuration-1'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Mensuration-2'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Time & Work'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Aptitude', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Computer extends StatefulWidget { + const Computer({super.key}); + + @override + State createState() => _ComputerState(); +} + +class _ComputerState extends State { + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', + text: 'Statistics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Ratio & Propotion'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Logarithms'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Profit & Loss'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'Averages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Simple Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Time & Distance'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Lcm & Hcf'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Compound Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Number System'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Problems On Ages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Mixtures And Alligations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Percentages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Partnership'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Data Interpretation'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Permutations & Combinations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Probability'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Mensuration-1'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Mensuration-2'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Time & Work'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + title: Text( + 'Aptitude', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Colors.black, + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), + body: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return Card( + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => quizapp())); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: const Color.fromARGB(255, 226, 206, 205), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 249, 248, 250), + Color.fromARGB(255, 251, 251, 252) + ], + ), + ), + ); + }), + ), + ); + } +} + +class Artifical extends StatefulWidget { + const Artifical({super.key}); + + @override + State createState() => _ArtificalState(); +} + +class _ArtificalState extends State { + List t = [ + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', + text: 'Statistics'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', + text: 'Ratio & Propotion'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', + text: 'Logarithms'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', + text: 'Profit & Loss'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', + text: 'Averages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', + text: 'Simple Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', + text: 'Time & Distance'), + tiles( + imgpath: + 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', + text: 'Lcm & Hcf'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', + text: 'Compound Interest'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', + text: 'Number System'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', + text: 'Problems On Ages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Mixtures And Alligations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', + text: 'Percentages'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', + text: 'Partnership'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', + text: 'Data Interpretation'), + tiles( + imgpath: + 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', + text: 'Permutations & Combinations'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Probability'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', + text: 'Mensuration-1'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', + text: 'Mensuration-2'), + tiles( + imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', + text: 'Time & Work'), + ]; + @override + Widget build(BuildContext context) { + return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( backgroundColor: Colors.black, diff --git a/lib/data/ece/digitalelectronics.dart b/lib/data/ece/digitalelectronics.dart new file mode 100644 index 0000000..e46579a --- /dev/null +++ b/lib/data/ece/digitalelectronics.dart @@ -0,0 +1,203 @@ +class QuestionModel { + final String question; + final List options; + final correctAnswerIndex; + final String Solution; + + const QuestionModel({ + required this.question, + required this.options, + required this.correctAnswerIndex, + required this.Solution, + }); +} + +List questions = [ + QuestionModel( + question: + "1. What is the fundamental building block of digital logic circuits?", + options: ["A. Transistor", "B. Resistor", "C. Capacitor", "D. Diode"], + correctAnswerIndex: 0, + Solution: + "The correct answer is A. Transistor. Transistors are the basic building blocks of digital logic circuits. They can act as switches to control the flow of electrical current in a digital system."), + QuestionModel( + question: "2. Which logic gate performs the logical AND operation?", + options: ["A. OR gate", "B. NOT gate", "C. AND gate", "D. XOR gate"], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. AND gate. The AND gate produces an output true (1) only when all its inputs are true (1). It performs the logical AND operation."), + QuestionModel( + question: "3. What is the binary representation of the decimal number 9?", + options: ["A. 1001", "B. 1100", "C. 1010", "D. 1111"], + correctAnswerIndex: 0, + Solution: + "The correct answer is A. 1001. In binary, the decimal number 9 is represented as 1001."), + QuestionModel( + question: + "4. Which flip-flop is used to store one bit of data in a digital circuit?", + options: [ + "A. AND flip-flop", + "B. XOR flip-flop", + "C. D flip-flop", + "D. OR flip-flop" + ], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. D flip-flop. A D flip-flop, also known as a data or delay flip-flop, is used to store one bit of data in a digital circuit."), + QuestionModel( + question: + "5. What is the primary function of a decoder in digital electronics?", + options: [ + "A. Amplify signals", + "B. Perform arithmetic operations", + "C. Convert binary data to a specific code", + "D. Store data temporarily" + ], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. Convert binary data to a specific code. A decoder is used to convert binary data into a specific code or set of outputs based on the input values."), + QuestionModel( + question: + "6. In a binary system, how many different values can be represented by 3 bits?", + options: ["A. 2", "B. 4", "C. 8", "D. 16"], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. 8. With 3 bits, you can represent 2^3 = 8 different values in a binary system."), + QuestionModel( + question: + "7. What does the term 'logic level' refer to in digital electronics?", + options: [ + "A. The voltage level of a digital signal", + "B. The speed of data transfer", + "C. The size of the integrated circuit", + "D. The number of transistors in a gate" + ], + correctAnswerIndex: 0, + Solution: + "The correct answer is A. The voltage level of a digital signal. Logic level refers to the voltage level that represents a binary state in digital electronics, typically high (1) or low (0)."), + QuestionModel( + question: "8. Which gate is equivalent to the Boolean expression A + B?", + options: ["A. AND gate", "B. OR gate", "C. XOR gate", "D. NOT gate"], + correctAnswerIndex: 1, + Solution: + "The correct answer is B. OR gate. The Boolean expression A + B represents the logical OR operation, which is performed by the OR gate."), + QuestionModel( + question: "9. What is the purpose of a multiplexer in digital circuits?", + options: [ + "A. Perform mathematical calculations", + "B. Select one of several data inputs and route it to the output", + "C. Store data temporarily", + "D. Amplify signals" + ], + correctAnswerIndex: 1, + Solution: + "The correct answer is B. Select one of several data inputs and route it to the output. A multiplexer (MUX) is used to select one of multiple data inputs and pass it to the output based on control inputs."), + QuestionModel( + question: + "10. Which binary representation is used to represent a negative number in two's complement form?", + options: [ + "A. All 0s", + "B. All 1s", + "C. Sign bit as 0 and magnitude in binary", + "D. Sign bit as 1 and magnitude in binary" + ], + correctAnswerIndex: 3, + Solution: + "The correct answer is D. Sign bit as 1 and magnitude in binary. In two's complement form, a negative number is represented by setting the most significant bit (sign bit) to 1 and representing the magnitude of the number in binary."), + QuestionModel( + question: + "11. Which gate performs the logical exclusive OR (XOR) operation?", + options: ["A. AND gate", "B. OR gate", "C. XOR gate", "D. NOT gate"], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. XOR gate. The XOR gate produces an output true (1) when the number of true inputs is odd, making it perform the logical exclusive OR (XOR) operation."), + QuestionModel( + question: + "12. What is the primary function of a counter in digital electronics?", + options: [ + "A. Amplify signals", + "B. Store data temporarily", + "C. Count events or occurrences", + "D. Perform mathematical calculations" + ], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. Count events or occurrences. A counter is a digital circuit used to count the number of events or occurrences of a specific event."), + QuestionModel( + question: "13. In a digital logic circuit, what does a NOT gate do?", + options: [ + "A. Performs addition", + "B. Inverts the input signal", + "C. Multiplies inputs", + "D. Stores data temporarily" + ], + correctAnswerIndex: 1, + Solution: + "The correct answer is B. Inverts the input signal. A NOT gate, also known as an inverter, changes the input signal from true (1) to false (0) and vice versa."), + QuestionModel( + question: + "14. What is the primary function of a flip-flop in digital circuits?", + options: [ + "A. Perform mathematical calculations", + "B. Store data temporarily", + "C. Amplify signals", + "D. Convert analog signals to digital" + ], + correctAnswerIndex: 1, + Solution: + "The correct answer is B. Store data temporarily. A flip-flop is a bistable multivibrator that stores binary information temporarily in digital circuits."), + QuestionModel( + question: + "15. What is the binary representation of the decimal number 10?", + options: ["A. 1000", "B. 1010", "C. 1100", "D. 1110"], + correctAnswerIndex: 1, + Solution: + "The correct answer is B. 1010. In binary, the decimal number 10 is represented as 1010."), + QuestionModel( + question: "16. Which gate performs the logical NOR operation?", + options: ["A. OR gate", "B. AND gate", "C. NOT gate", "D. NOR gate"], + correctAnswerIndex: 3, + Solution: + "The correct answer is D. NOR gate. The NOR gate performs the logical NOR operation, which is the complement of the OR operation."), + QuestionModel( + question: + "17. What is the function of a shift register in digital electronics?", + options: [ + "A. Store data temporarily", + "B. Amplify signals", + "C. Perform arithmetic calculations", + "D. Shift binary data left or right" + ], + correctAnswerIndex: 3, + Solution: + "The correct answer is D. Shift binary data left or right. A shift register is a digital circuit that can shift binary data in a specified direction (left or right) based on control signals."), + QuestionModel( + question: "18. Which gate performs the logical NAND operation?", + options: ["A. OR gate", "B. AND gate", "C. XOR gate", "D. NAND gate"], + correctAnswerIndex: 3, + Solution: + "The correct answer is D. NAND gate. The NAND gate performs the logical NAND operation, which is the complement of the AND operation."), + QuestionModel( + question: "19. What is the purpose of a decoder in digital circuits?", + options: [ + "A. Amplify signals", + "B. Perform mathematical calculations", + "C. Convert binary data to a specific code", + "D. Store data temporarily" + ], + correctAnswerIndex: 2, + Solution: + "The correct answer is C. Convert binary data to a specific code. A decoder is used to convert binary data into a specific code or set of outputs based on the input values."), + QuestionModel( + question: + "20. What is the primary function of a multiplexer in digital electronics?", + options: [ + "A. Perform mathematical calculations", + "B. Select one of several data inputs and route it to the output", + "C. Store data temporarily", + "D. Amplify signals" + ], + correctAnswerIndex: 1, + Solution: + "The correct answer is B. Select one of several data inputs and route it to the output. A multiplexer (MUX) is used to select one of multiple data inputs and pass it to the output based on control inputs.") +]; diff --git a/lib/data/electrical/ac&dccircuits.dart b/lib/data/electrical/ac&dccircuits.dart new file mode 100644 index 0000000..6f974c0 --- /dev/null +++ b/lib/data/electrical/ac&dccircuits.dart @@ -0,0 +1,255 @@ +class QuestionModel { + final String question; + final List options; + final correctAnswerIndex; + final String Solution; + + const QuestionModel({ + required this.question, + required this.options, + required this.correctAnswerIndex, + required this.Solution, + }); +} + +List questions = [ + QuestionModel( + question: + "1. In which type of circuit does the current flow continuously in one direction?", + options: [ + "a) AC circuits", + "b) DC circuits", + "c) Both AC and DC circuits", + "d) Neither AC nor DC circuits", + ], + correctAnswerIndex: 1, + Solution: + 'n a DC circuit, the current flows continuously in one direction.'), + QuestionModel( + question: + "2. What is the frequency of standard household AC power in the United States?", + options: [ + "a) 50 Hz", + "b) 60 Hz", + "c) 120 Hz", + "d) 240 Hz", + ], + correctAnswerIndex: 1, + Solution: + 'Standard household AC power in the United States has a frequency of 60 Hz.'), + QuestionModel( + question: + "3. Which of the following components is used to convert AC to DC in electronic devices?", + options: [ + "a) Transformer", + "b) Capacitor", + "c) Diode", + "d) Inductor", + ], + correctAnswerIndex: 2, + Solution: 'Diodes are used to rectify AC to DC in electronic devices.'), + QuestionModel( + question: + "4. What is the peak voltage of a sinusoidal AC waveform with a root mean square (RMS) voltage of 120 V?", + options: [ + "a) 120 V", + "b) 169.7 V", + "c) 240 V", + "d) 340.5 V", + ], + correctAnswerIndex: 1, + Solution: + "The peak voltage of a sinusoidal AC waveform is √2 times the RMS voltage, so it's approximately 120 V * √2 ≈ 169.7 V."), + QuestionModel( + question: + "5. In an AC circuit with a purely resistive load, what is the phase relationship between current and voltage?", + options: [ + "a) In-phase (0° phase difference)", + "b) 90 degrees out of phase", + "c) 180 degrees out of phase", + "d) 270 degrees out of phase", + ], + correctAnswerIndex: 0, + Solution: + ' In a purely resistive AC circuit, the current and voltage are in-phase, meaning they have a 0° phase difference.'), + QuestionModel( + question: + "6. Which type of circuit element stores energy in a magnetic field and resists changes in current?", + options: [ + "a) Resistor", + "b) Capacitor", + "c) Diode", + "d) Inductor", + ], + correctAnswerIndex: 3, + Solution: + 'An inductor stores energy in a magnetic field and resists changes in current.'), + QuestionModel( + question: + "7. What is the electrical symbol for a diode in a circuit diagram?", + options: [ + "a) R", + "b) C", + "c) D", + "d) L", + ], + correctAnswerIndex: 3, + Solution: + ' The electrical symbol for a diode in a circuit diagram is represented by the letter "D."'), + QuestionModel( + question: + "8. In a DC circuit, a 10-ohm resistor has a current of 5 amperes passing through it. What is the power dissipated in the resistor?", + options: [ + "a) 25 W", + "b) 50 W", + "c) 100 W", + "d) 250 W", + ], + correctAnswerIndex: 0, + Solution: + 'The power dissipated in a resistor can be calculated using the formula P = I²R.'), + QuestionModel( + question: + "9. In an AC circuit, a capacitor has a capacitance of 0.02 F. If the frequency is 50 Hz, what is the capacitive reactance?", + options: [ + "a) 15 ohms", + "b) 20 ohms", + "c) 25 ohms", + "d) 30 ohms", + ], + correctAnswerIndex: 2, + Solution: + 'Capacitive reactance (Xc) is calculated using the formula Xc = 1 / (2πfC).'), + QuestionModel( + question: + "10. In a DC circuit, three resistors with values of 10 ohms, 20 ohms, and 30 ohms are connected in series. If a current of 2 amperes flows through the circuit, what is the total voltage drop across the resistors?", + options: [ + "a) 20 V", + "b) 40 V", + "c) 60 V", + "d) 120 V", + ], + correctAnswerIndex: 3, + Solution: + 'In a series circuit, the total voltage drop is the sum of the voltage drops across each resistor.'), + QuestionModel( + question: + "11. In an AC circuit, the real power is 400 W, and the apparent power is 500 VA. Calculate the power factor of the circuit.", + options: [ + "a) 0.4", + "b) 0.5", + "c) 0.6", + "d) 0.8", + ], + correctAnswerIndex: 1, + Solution: + 'Power factor (PF) is calculated as the ratio of real power (P) to apparent power (S), i.e., PF = P / S.'), + QuestionModel( + question: + "12. In a DC circuit, two resistors with values of 40 ohms and 60 ohms are connected in parallel. What is the total resistance of the parallel combination?", + options: [ + "a) 24 ohms", + "b) 40 ohms", + "c) 60 ohms", + "d) 100 ohms", + ], + correctAnswerIndex: 0, + Solution: + ' In a parallel circuit, the total resistance (Rp) is calculated as 1 / Rp = 1 / R1 + 1 / R2.'), + QuestionModel( + question: + "13. In an AC circuit, a coil with an inductance of 0.1 H has a frequency of 60 Hz. What is the inductive reactance?", + options: [ + "a) 3.77 ohms", + "b) 7.54 ohms", + "c) 15.08 ohms", + "d) 30.16 ohms", + ], + correctAnswerIndex: 2, + Solution: + 'Inductive reactance (Xl) is calculated using the formula Xl = 2πfL.'), + QuestionModel( + question: + "14. In a DC circuit with two resistors in series (R1 = 20 ohms and R2 = 30 ohms), if the total voltage is 60 V, what is the voltage drop across R2?", + options: [ + "a) 10 V", + "b) 20 V", + "c) 30 V", + "d) 40 V", + ], + correctAnswerIndex: 1, + Solution: + 'In a series circuit, the voltage across each resistor depends on the ratio of its resistance to the total resistance.'), + QuestionModel( + question: + "15. Which of the following statements is true about AC voltage and DC voltage?", + options: [ + "a) AC voltage has a constant magnitude.", + "b) DC voltage periodically changes direction.", + "c) AC voltage periodically changes magnitude and direction.", + "d) DC voltage is generated by a dynamo.", + ], + correctAnswerIndex: 2, + Solution: + 'AC voltage periodically changes both magnitude and direction, while DC voltage remains constant.'), + QuestionModel( + question: + "16. What is the power factor of a purely resistive AC circuit?", + options: [ + "a) 0", + "b) 1", + "c) 0.5", + "d) 0.707", + ], + correctAnswerIndex: 1, + Solution: + 'A purely resistive AC circuit has a power factor of 1, indicating that the current and voltage are in-phase.'), + QuestionModel( + question: + "17. In an ideal diode, what is the voltage drop across it when it is conducting?", + options: [ + "a) 0 V", + "b) 1 V", + "c) 5 V", + "d) 10 V", + ], + correctAnswerIndex: 0, + Solution: + ' In an ideal diode, when it is conducting (forward-biased), it has a voltage drop of 0 V.'), + QuestionModel( + question: + "18. Which of the following components is used to smooth out voltage fluctuations in a DC power supply?", + options: [ + "a) Resistor", + "b) Capacitor", + "c) Diode", + "d) Inductor", + ], + correctAnswerIndex: 1, + Solution: + 'Capacitors are used to smooth out voltage fluctuations in a DC power supply.'), + QuestionModel( + question: + "19. What type of circuit is commonly used in homes to control the intensity of light from lamps?", + options: [ + "a) AC circuit", + "b) DC circuit", + "c) Series circuit", + "d) Parallel circuit", + ], + correctAnswerIndex: 0, + Solution: + 'AC circuits are commonly used in homes for controlling the intensity of light from lamps.'), + QuestionModel( + question: + "20. In an AC circuit with a purely capacitive load, what is the phase relationship between current and voltage?", + options: [ + "a) In-phase (0° phase difference)" + "b) 90 degrees out of phase" + "c) 180 degrees out of phase" + "d) 270 degrees out of phase" + ], + correctAnswerIndex: 2, + Solution: + ' In a purely capacitive AC circuit, the current and voltage are 180 degrees out of phase.'), +]; diff --git a/lib/main.dart b/lib/main.dart index 61c6a9c..df5edcd 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -170,106 +170,146 @@ class _homeState extends State { ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 248, 200, 137), - Color.fromARGB(255, 157, 138, 114), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=hycoXVNBpA16&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Verbal', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Reasoning', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Verbal(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 248, 200, 137), + Color.fromARGB(255, 157, 138, 114), + ]), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + image: NetworkImage( + 'https://img.icons8.com/?size=80&id=hycoXVNBpA16&format=png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Verbal', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Reasoning', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 206, 253, 179), - Color.fromARGB(255, 123, 150, 110), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=64&id=49446&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'General', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Knowledge', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Electronics(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 206, 253, 179), + Color.fromARGB(255, 123, 150, 110), + ]), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + height: 80, + image: NetworkImage( + 'https://cdn-icons-png.flaticon.com/128/900/900618.png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Electronics', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Communication', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 253, 184, 192), - Color.fromARGB(255, 149, 112, 114), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=iKwDC0dEKn1u&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Civil', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Civil(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 253, 184, 192), + Color.fromARGB(255, 149, 112, 114), + ]), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + image: NetworkImage( + 'https://img.icons8.com/?size=80&id=iKwDC0dEKn1u&format=png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Civil', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Engineering', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), GestureDetector( @@ -319,141 +359,193 @@ class _homeState extends State { ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 198, 188, 253), - Color.fromARGB(255, 122, 118, 148), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=myTX8FfvAVZh&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Mechanical', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Mechanical(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 198, 188, 253), + Color.fromARGB(255, 122, 118, 148), + ]), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + image: NetworkImage( + 'https://img.icons8.com/?size=80&id=myTX8FfvAVZh&format=png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Mechanical', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Engineering', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 191, 246, 253), - Color.fromARGB(255, 115, 140, 143), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=hTGRQwQv8YKX&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Agriculture', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Agriculture(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 191, 246, 253), + Color.fromARGB(255, 115, 140, 143), + ]), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + image: NetworkImage( + 'https://img.icons8.com/?size=80&id=hTGRQwQv8YKX&format=png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Agriculture', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Engineering', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 255, 191, 241), - Color.fromARGB(255, 144, 117, 138), - ]), - color: const Color.fromARGB(255, 255, 191, 241), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=113530&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Computer', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Science', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Computer(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 255, 191, 241), + Color.fromARGB(255, 144, 117, 138), + ]), + color: const Color.fromARGB(255, 255, 191, 241), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + image: NetworkImage( + 'https://img.icons8.com/?size=80&id=113530&format=png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Computer', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Science', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), - Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 244, 252, 186), - Color.fromARGB(255, 136, 140, 109), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=97384&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Artifical', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Intelligence', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), + GestureDetector( + onTap: () { + Navigator.push( + context, + PageRouteAnimator( + child: Artifical(), + routeAnimation: RouteAnimation.rightToLeft, + settings: const RouteSettings(arguments: 'I am going'), + curve: Curves.easeOut, ), - ], + ); + }, + child: Container( + decoration: BoxDecoration( + gradient: const LinearGradient(colors: [ + Color.fromARGB(255, 244, 252, 186), + Color.fromARGB(255, 136, 140, 109), + ]), + borderRadius: BorderRadius.circular(25)), + child: const Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + image: NetworkImage( + 'https://img.icons8.com/?size=80&id=97384&format=png'), + ), + SizedBox( + height: 10, + ), + Text( + 'Artifical', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + Text( + 'Intelligence', + style: TextStyle( + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + ], + ), ), ), ], From 08a6f27ff848a1d396bf1aed29bf6d8ce0420994 Mon Sep 17 00:00:00 2001 From: DURGA PRASAD <21MH1A0560@acoe.edu.in> Date: Tue, 14 Nov 2023 00:55:45 +0530 Subject: [PATCH 3/4] Merge branch 'app' --- lib/Screens/Signup.dart | 167 ++++++++++++ lib/Screens/login.dart | 168 ++++++++++++ lib/main.dart | 592 ++++++++-------------------------------- pubspec.lock | 16 ++ pubspec.yaml | 2 + 5 files changed, 470 insertions(+), 475 deletions(-) create mode 100644 lib/Screens/Signup.dart create mode 100644 lib/Screens/login.dart diff --git a/lib/Screens/Signup.dart b/lib/Screens/Signup.dart new file mode 100644 index 0000000..c815484 --- /dev/null +++ b/lib/Screens/Signup.dart @@ -0,0 +1,167 @@ +import 'package:Learner/Screens/login.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_custom_clippers/flutter_custom_clippers.dart'; + +class SignupOnePage extends StatefulWidget { + const SignupOnePage({super.key}); + + @override + State createState() => _SignupOnePageState(); +} + +class _SignupOnePageState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Colors.blue.shade100, + body: SingleChildScrollView( + child: Column( + children: [ + const SizedBox( + height: 180, + ), + Padding( + padding: const EdgeInsets.all(20.0), + child: Stack( + children: [ + ClipPath( + clipper: RoundedDiagonalPathClipper(), + child: Container( + height: 400, + padding: const EdgeInsets.all(10.0), + decoration: const BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(40.0)), + color: Colors.white, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox( + height: 90.0, + ), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextField( + style: const TextStyle(color: Colors.blue), + decoration: InputDecoration( + hintText: "Email address", + hintStyle: TextStyle( + color: Colors.blue.shade200), + border: InputBorder.none, + icon: const Icon( + Icons.email, + color: Colors.blue, + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), + child: Divider( + color: Colors.blue.shade400, + ), + ), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextField( + style: const TextStyle(color: Colors.blue), + decoration: InputDecoration( + hintText: "Password", + hintStyle: TextStyle( + color: Colors.blue.shade200), + border: InputBorder.none, + icon: const Icon( + Icons.lock, + color: Colors.blue, + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), + child: Divider( + color: Colors.blue.shade400, + ), + ), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextField( + style: const TextStyle(color: Colors.blue), + decoration: InputDecoration( + hintText: "Confirm password", + hintStyle: TextStyle( + color: Colors.blue.shade200), + border: InputBorder.none, + icon: const Icon( + Icons.lock, + color: Colors.blue, + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), + child: Divider( + color: Colors.blue.shade400, + ), + ), + const SizedBox( + height: 10.0, + ), + const SizedBox( + height: 10.0, + ), + ]), + ), + ), + const Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + CircleAvatar( + radius: 40.0, + backgroundColor: Color.fromRGBO(25, 121, 205, 0.904), + child: Icon(Icons.person), + ), + ], + ), + SizedBox( + height: 420, + child: Align( + alignment: Alignment.bottomCenter, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(40.0)), + backgroundColor: Colors.blue, + ), + onPressed: () {}, + child: const Text("Sign Up", + style: TextStyle(color: Colors.white70)), + ), + ), + ), + ], + ), + ), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + TextButton( + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => + const loginpage())); + }, + child: const Text("Login", + style: TextStyle(color: Colors.blue, fontSize: 18.0)), + ) + ], + ) + ], + ), + ), + ); + } +} diff --git a/lib/Screens/login.dart b/lib/Screens/login.dart new file mode 100644 index 0000000..584dfa7 --- /dev/null +++ b/lib/Screens/login.dart @@ -0,0 +1,168 @@ +import 'package:Learner/Screens/Signup.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_custom_clippers/flutter_custom_clippers.dart'; + +void main() { + runApp(const app()); +} + +class app extends StatelessWidget { + const app({super.key}); + + @override + Widget build(BuildContext context) { + return const MaterialApp( + home: loginpage(), + ); + } +} + +class loginpage extends StatefulWidget { + const loginpage({super.key}); + + @override + State createState() => _loginpageState(); +} + +class _loginpageState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Colors.blue.shade100, + body: SingleChildScrollView( + child: Column( + children: [ + const SizedBox( + height: 180, + ), + Padding( + padding: const EdgeInsets.all(20.0), + child: Stack( + children: [ + ClipPath( + clipper: RoundedDiagonalPathClipper(), + child: Container( + height: 400, + padding: const EdgeInsets.all(10.0), + decoration: const BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(40.0)), + color: Colors.white, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox( + height: 90.0, + ), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextField( + style: const TextStyle(color: Colors.blue), + decoration: InputDecoration( + hintText: "Email address", + hintStyle: TextStyle( + color: Colors.blue.shade200), + border: InputBorder.none, + icon: const Icon( + Icons.email, + color: Colors.blue, + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), + child: Divider( + color: Colors.blue.shade400, + ), + ), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextField( + style: const TextStyle(color: Colors.blue), + decoration: InputDecoration( + hintText: "Password", + hintStyle: TextStyle( + color: Colors.blue.shade200), + border: InputBorder.none, + icon: const Icon( + Icons.lock, + color: Colors.blue, + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), + child: Divider( + color: Colors.blue.shade400, + ), + ), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Container( + padding: const EdgeInsets.only(right: 20.0), + child: const Text( + "Forgot Password", + style: TextStyle(color: Colors.black45), + )) + ], + ), + const SizedBox( + height: 10.0, + ), + ]), + ), + ), + const Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + CircleAvatar( + radius: 40.0, + backgroundColor: Color.fromRGBO(25, 121, 205, 0.904), + child: Icon(Icons.person), + ), + ], + ), + SizedBox( + height: 420, + child: Align( + alignment: Alignment.bottomCenter, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(40.0)), + backgroundColor: Colors.blue, + ), + onPressed: () {}, + child: const Text("Login", + style: TextStyle(color: Colors.white70)), + ), + ), + ), + ], + ), + ), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + TextButton( + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => + const SignupOnePage())); + }, + child: const Text("Sign Up", + style: TextStyle(color: Colors.blue, fontSize: 18.0)), + ) + ], + ) + ], + ), + ), + ); + } +} diff --git a/lib/main.dart b/lib/main.dart index 3ce744a..f3c7ed7 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -3,6 +3,7 @@ import 'package:Learner/Screens/splashscreen.dart'; import 'package:animated_text_kit/animated_text_kit.dart'; import 'package:flutter/material.dart'; import 'package:page_route_animator/page_route_animator.dart'; +import 'package:gradient_borders/box_borders/gradient_box_border.dart'; void main() { runApp(const app()); @@ -28,11 +29,51 @@ class home extends StatefulWidget { } class _homeState extends State { + List li = [ + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=E4TmMXDTFqnU&format=png', + name: 'Aptitude', + screen: Aptitude()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=QxdLtnS1odd0&format=png', + name: ' Logical \n Reasoning', + screen: Logical()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=hycoXVNBpA16&format=png', + name: ' Verbal\nReasoning', + screen: Verbal()), + Contacts( + imgPath: 'https://cdn-icons-png.flaticon.com/128/900/900618.png', + name: ' Electronics\nCommunication', + screen: Electronics()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=iKwDC0dEKn1u&format=png', + name: ' Civil\nEngineering', + screen: Civil()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=E8jmYfaPfl4Z&format=png', + name: ' Electrical\nEngineering', + screen: Electrical()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=myTX8FfvAVZh&format=png', + name: 'Mechanical\nEngineering', + screen: Mechanical()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=hTGRQwQv8YKX&format=png', + name: ' Agriculture\nEngineering', + screen: Agriculture()), + Contacts( + imgPath: 'https://cdn-icons-png.flaticon.com/128/11523/11523357.png', + name: 'Computer\n Science', + screen: Computer()), + Contacts( + imgPath: 'https://img.icons8.com/?size=80&id=97384&format=png', + name: ' Artifical\nIntelligence', + screen: Artifical()), + ]; + @override Widget build(BuildContext context) { - var size = MediaQuery.of(context).size; - final double itemheight = (size.height - kToolbarHeight - 24) / 4.3; - final double itemwidth = size.width / 2; const colorizeColors = [ Color.fromARGB(255, 250, 248, 249), Colors.blue, @@ -43,7 +84,7 @@ class _homeState extends State { const colorizeTextStyle = TextStyle( fontSize: 25.0, fontFamily: 'Horizon', fontWeight: FontWeight.bold); return Scaffold( - backgroundColor: const Color.fromARGB(255, 0, 7, 7), + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: AnimatedTextKit( totalRepeatCount: 6, @@ -75,482 +116,83 @@ class _homeState extends State { ], ), ), - body: Padding( - padding: const EdgeInsets.only(left: 2, right: 2, top: 2, bottom: 2), - child: GridView.count( - childAspectRatio: (itemwidth / itemheight), - crossAxisCount: 2, - crossAxisSpacing: 15, - mainAxisSpacing: 15, - children: [ - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Aptitude(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 159, 245, 222), - Color.fromARGB(255, 101, 151, 138), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=E4TmMXDTFqnU&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Aptitude', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Aptitude(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 246, 236, 173), - Color.fromARGB(255, 153, 147, 109) - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=QxdLtnS1odd0&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Logical', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Reasoning', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Verbal(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 248, 200, 137), - Color.fromARGB(255, 157, 138, 114), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=hycoXVNBpA16&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Verbal', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Reasoning', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Electronics(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 206, 253, 179), - Color.fromARGB(255, 123, 150, 110), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - height: 80, - image: NetworkImage( - 'https://cdn-icons-png.flaticon.com/128/900/900618.png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Electronics', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Communication', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Civil(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 253, 184, 192), - Color.fromARGB(255, 149, 112, 114), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=iKwDC0dEKn1u&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Civil', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Electrical(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 244, 182, 249), - Color.fromARGB(255, 139, 108, 142), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=E8jmYfaPfl4Z&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Electrical', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Mechanical(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 198, 188, 253), - Color.fromARGB(255, 122, 118, 148), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=myTX8FfvAVZh&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Mechanical', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Agriculture(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 191, 246, 253), - Color.fromARGB(255, 115, 140, 143), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=hTGRQwQv8YKX&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Agriculture', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Engineering', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Computer(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, - ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 255, 191, 241), - Color.fromARGB(255, 144, 117, 138), - ]), - color: const Color.fromARGB(255, 255, 191, 241), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=113530&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Computer', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Science', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], - ), - ), - ), - GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteAnimator( - child: Artifical(), - routeAnimation: RouteAnimation.rightToLeft, - settings: const RouteSettings(arguments: 'I am going'), - curve: Curves.easeOut, + body: GridView.builder( + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, // Number of columns in the grid + crossAxisSpacing: 8.0, // Spacing between columns + mainAxisSpacing: 8.0, // Spacing between rows + ), + itemCount: 10, + itemBuilder: (context, i) { + return Padding( + padding: const EdgeInsets.all(4), + child: Card( + color: Colors.transparent, + elevation: 30, + child: GestureDetector( + onTap: () { + Navigator.push(context, + MaterialPageRoute(builder: (context) => li[i].screen)); + }, + child: Container( + decoration: BoxDecoration( + color: Color.fromRGBO(243, 244, 244, 0.612), + border: const GradientBoxBorder( + gradient: LinearGradient(colors: [ + Color.fromARGB(200, 0, 0, 0), + Color.fromARGB(193, 0, 0, 0) + ]), + width: 2, + ), + borderRadius: BorderRadius.circular(16)), + child: Column( + children: [ + const SizedBox( + height: 10, + ), + SizedBox( + height: 80, + width: 100, + child: Image(image: NetworkImage(li[i].imgPath))), + const SizedBox( + height: 6, + ), + Text( + li[i].name, + style: const TextStyle( + fontSize: 21, fontWeight: FontWeight.bold), + ) + ], ), - ); - }, - child: Container( - decoration: BoxDecoration( - gradient: const LinearGradient(colors: [ - Color.fromARGB(255, 244, 252, 186), - Color.fromARGB(255, 136, 140, 109), - ]), - borderRadius: BorderRadius.circular(25)), - child: const Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - image: NetworkImage( - 'https://img.icons8.com/?size=80&id=97384&format=png'), - ), - SizedBox( - height: 10, - ), - Text( - 'Artifical', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - Text( - 'Intelligence', - style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - fontSize: 20), - ), - ], ), ), ), - ], - ), + ); + }, ), ); } } + +class Contacts { + final String imgPath; + final String name; + final Widget screen; + Contacts({required this.imgPath, required this.name, required this.screen}); +} + +class appppp extends StatefulWidget { + const appppp({super.key}); + + @override + State createState() => _apppppState(); +} + +class _apppppState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock index 0fd9a54..2e5da0e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -214,6 +214,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.3.1" + flutter_custom_clippers: + dependency: "direct main" + description: + name: flutter_custom_clippers + sha256: "473e3daf61c2a6cee0ad137393259a25223239d519a131c7ec1cac04d06e5407" + url: "https://pub.dev" + source: hosted + version: "2.1.0" flutter_floating_bottom_bar: dependency: "direct main" description: @@ -248,6 +256,14 @@ packages: description: flutter source: sdk version: "0.0.0" + gradient_borders: + dependency: "direct main" + description: + name: gradient_borders + sha256: "69eeaff519d145a4c6c213ada1abae386bcc8981a4970d923e478ce7ba19e309" + url: "https://pub.dev" + source: hosted + version: "1.0.0" html: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index bab37cc..6991615 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -45,6 +45,8 @@ dependencies: animated_text_kit: ^4.2.2 page_route_animator: ^1.0.3 animation_list: ^2.2.1 + gradient_borders: ^1.0.0 + flutter_custom_clippers: ^2.1.0 dev_dependencies: flutter_test: From 1263bc51ee0e8cfae3258e8b8843c6df3158a63f Mon Sep 17 00:00:00 2001 From: DURGA PRASAD <21MH1A0560@acoe.edu.in> Date: Thu, 16 Nov 2023 21:09:56 +0530 Subject: [PATCH 4/4] Merge branch 'app' --- android/app/build.gradle | 2 + android/build.gradle | 1 + lib/Screens/Signup.dart | 249 ++- lib/Screens/login.dart | 224 +- lib/Screens/pickscreen.dart | 68 +- lib/Screens/quizscreen.dart | 84 +- lib/Screens/resultscreen.dart | 78 +- lib/Screens/splashscreen.dart | 73 +- lib/bottomnavbar.dart | 169 -- lib/chatgpt.dart | 36 - lib/consts.dart | 2 - lib/data/ece/digitalelectronics.dart | 203 -- lib/data/mechanical/mechanicallist.dart | 23 +- lib/main.dart | 632 +++++- lib/pages/chat_page.dart | 7 +- lib/widgets/answercard.dart | 10 +- lib/widgets/nextbutton.dart | 35 +- lib/widgets/widgets.dart | 1874 +++++++++-------- linux/flutter/generated_plugin_registrant.cc | 4 + linux/flutter/generated_plugins.cmake | 1 + macos/Flutter/GeneratedPluginRegistrant.swift | 6 + pubspec.lock | 200 ++ pubspec.yaml | 10 +- .../flutter/generated_plugin_registrant.cc | 9 + windows/flutter/generated_plugins.cmake | 3 + 25 files changed, 2329 insertions(+), 1674 deletions(-) delete mode 100644 lib/bottomnavbar.dart delete mode 100644 lib/chatgpt.dart delete mode 100644 lib/consts.dart delete mode 100644 lib/data/ece/digitalelectronics.dart diff --git a/android/app/build.gradle b/android/app/build.gradle index a0de81c..a474edd 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -23,6 +23,7 @@ if (flutterVersionName == null) { apply plugin: 'com.android.application' apply plugin: 'kotlin-android' +apply plugin: 'com.google.gms.google-services' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { @@ -69,4 +70,5 @@ flutter { dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation platform('com.google.firebase:firebase-bom:32.5.0') } diff --git a/android/build.gradle b/android/build.gradle index f7eb7f6..fbdf005 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -8,6 +8,7 @@ buildscript { dependencies { classpath 'com.android.tools.build:gradle:7.3.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + classpath 'com.google.gms:google-services:4.3.15' } } diff --git a/lib/Screens/Signup.dart b/lib/Screens/Signup.dart index c815484..6e3f105 100644 --- a/lib/Screens/Signup.dart +++ b/lib/Screens/Signup.dart @@ -1,6 +1,8 @@ import 'package:Learner/Screens/login.dart'; +import 'package:floating_snackbar/floating_snackbar.dart'; import 'package:flutter/material.dart'; import 'package:flutter_custom_clippers/flutter_custom_clippers.dart'; +import 'package:firebase_auth/firebase_auth.dart'; class SignupOnePage extends StatefulWidget { const SignupOnePage({super.key}); @@ -10,10 +12,45 @@ class SignupOnePage extends StatefulWidget { } class _SignupOnePageState extends State { + final _formkey = GlobalKey(); + final email = TextEditingController(); + final pass = TextEditingController(); + final cpass = TextEditingController(); + bool _obscure = true; + + Future Signup(String email, String pass) async { + final FirebaseAuth auth = FirebaseAuth.instance; + try { + auth + .createUserWithEmailAndPassword(email: email, password: pass) + .then((value) { + FloatingSnackBar( + message: 'Successfully Created', + context: context, + textColor: Colors.black, + textStyle: const TextStyle(color: Color.fromARGB(255, 255, 0, 0)), + duration: const Duration(milliseconds: 4000), + backgroundColor: Colors.white, + ); + }).onError((error, stackTrace) { + FloatingSnackBar( + message: 'Already have an account', + context: context, + textColor: Colors.black, + textStyle: const TextStyle(color: Color.fromARGB(255, 255, 0, 0)), + duration: const Duration(milliseconds: 4000), + backgroundColor: Colors.white, + ); + }); + } catch (err) { + throw Exception(err); + } + } + @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.blue.shade100, + backgroundColor: Colors.orange.shade100, body: SingleChildScrollView( child: Column( children: [ @@ -33,85 +70,115 @@ class _SignupOnePageState extends State { borderRadius: BorderRadius.all(Radius.circular(40.0)), color: Colors.white, ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const SizedBox( - height: 90.0, - ), - Container( - padding: const EdgeInsets.symmetric( - horizontal: 20.0), - child: TextField( - style: const TextStyle(color: Colors.blue), - decoration: InputDecoration( - hintText: "Email address", - hintStyle: TextStyle( - color: Colors.blue.shade200), - border: InputBorder.none, - icon: const Icon( - Icons.email, - color: Colors.blue, - )), - )), - Container( - padding: const EdgeInsets.only( - left: 20.0, right: 20.0, bottom: 10.0), - child: Divider( - color: Colors.blue.shade400, + child: Form( + key: _formkey, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox( + height: 90.0, + ), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextFormField( + cursorColor: Colors.black, + controller: email, + validator: (val) => val!.length == 0 + ? "Enter the email" + : null, + style: const TextStyle( + color: Color.fromARGB(255, 0, 0, 0)), + decoration: InputDecoration( + hintText: "Email address", + hintStyle: TextStyle( + color: + Color.fromARGB(255, 52, 51, 51), + ), + icon: const Icon( + Icons.email, + color: + Color.fromARGB(255, 235, 146, 69), + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), ), - ), - Container( - padding: const EdgeInsets.symmetric( - horizontal: 20.0), - child: TextField( - style: const TextStyle(color: Colors.blue), - decoration: InputDecoration( - hintText: "Password", - hintStyle: TextStyle( - color: Colors.blue.shade200), - border: InputBorder.none, - icon: const Icon( - Icons.lock, - color: Colors.blue, - )), - )), - Container( - padding: const EdgeInsets.only( - left: 20.0, right: 20.0, bottom: 10.0), - child: Divider( - color: Colors.blue.shade400, + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextFormField( + obscureText: _obscure, + obscuringCharacter: "*", + controller: pass, + validator: (val) => val!.length == 0 + ? "Enter the password" + : null, + style: const TextStyle( + color: Color.fromARGB(255, 18, 18, 18)), + decoration: InputDecoration( + hintText: "Password", + suffixIcon: IconButton( + icon: _obscure + ? const Icon(Icons.visibility_off) + : const Icon(Icons.visibility), + onPressed: () { + setState(() { + _obscure = !_obscure; + }); + }, + ), + hintStyle: TextStyle( + color: + Color.fromARGB(255, 52, 51, 51), + ), + icon: const Icon( + Icons.lock, + color: + Color.fromARGB(255, 235, 146, 69), + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), ), - ), - Container( - padding: const EdgeInsets.symmetric( - horizontal: 20.0), - child: TextField( - style: const TextStyle(color: Colors.blue), - decoration: InputDecoration( - hintText: "Confirm password", - hintStyle: TextStyle( - color: Colors.blue.shade200), - border: InputBorder.none, - icon: const Icon( - Icons.lock, - color: Colors.blue, - )), - )), - Container( - padding: const EdgeInsets.only( - left: 20.0, right: 20.0, bottom: 10.0), - child: Divider( - color: Colors.blue.shade400, + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextFormField( + controller: cpass, + validator: (val) => val!.length == 0 + ? "confirm password" + : null, + style: const TextStyle( + color: Color.fromARGB(255, 0, 0, 0)), + obscureText: true, + obscuringCharacter: "*", + decoration: InputDecoration( + hintText: "Confirm password", + hintStyle: TextStyle( + color: + Color.fromARGB(255, 52, 51, 51), + ), + icon: const Icon( + Icons.lock, + color: + Color.fromARGB(255, 235, 146, 69), + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), ), - ), - const SizedBox( - height: 10.0, - ), - const SizedBox( - height: 10.0, - ), - ]), + const SizedBox( + height: 10.0, + ), + const SizedBox( + height: 10.0, + ), + ]), + ), ), ), const Row( @@ -119,8 +186,11 @@ class _SignupOnePageState extends State { children: [ CircleAvatar( radius: 40.0, - backgroundColor: Color.fromRGBO(25, 121, 205, 0.904), - child: Icon(Icons.person), + backgroundColor: Color.fromARGB(255, 235, 146, 69), + child: Icon( + Icons.person, + color: Color.fromARGB(255, 0, 0, 0), + ), ), ], ), @@ -132,11 +202,21 @@ class _SignupOnePageState extends State { style: ElevatedButton.styleFrom( shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(40.0)), - backgroundColor: Colors.blue, + backgroundColor: Color.fromARGB(255, 235, 146, 69), ), - onPressed: () {}, + onPressed: () { + setState(() { + if (_formkey.currentState!.validate()) { + Signup(email.text.trim(), pass.text.trim()); + Navigator.pushReplacement( + context, + MaterialPageRoute( + builder: (context) => loginpage())); + } + }); + }, child: const Text("Sign Up", - style: TextStyle(color: Colors.white70)), + style: TextStyle(color: Colors.black87)), ), ), ), @@ -148,14 +228,15 @@ class _SignupOnePageState extends State { children: [ TextButton( onPressed: () { - Navigator.push( + Navigator.pushReplacement( context, MaterialPageRoute( builder: (BuildContext context) => const loginpage())); }, child: const Text("Login", - style: TextStyle(color: Colors.blue, fontSize: 18.0)), + style: TextStyle( + color: Color.fromARGB(255, 0, 0, 0), fontSize: 18.0)), ) ], ) diff --git a/lib/Screens/login.dart b/lib/Screens/login.dart index 584dfa7..22aa41f 100644 --- a/lib/Screens/login.dart +++ b/lib/Screens/login.dart @@ -1,4 +1,8 @@ import 'package:Learner/Screens/Signup.dart'; +import 'package:Learner/Screens/splashscreen.dart'; +import 'package:Learner/main.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:floating_snackbar/floating_snackbar.dart'; import 'package:flutter/material.dart'; import 'package:flutter_custom_clippers/flutter_custom_clippers.dart'; @@ -12,7 +16,7 @@ class app extends StatelessWidget { @override Widget build(BuildContext context) { return const MaterialApp( - home: loginpage(), + home: Splashscreen(), ); } } @@ -25,10 +29,51 @@ class loginpage extends StatefulWidget { } class _loginpageState extends State { + final _formkey = GlobalKey(); + final email = TextEditingController(); + final pass = TextEditingController(); + var _obscure = true; + + Future Forgot(String email) async { + final FirebaseAuth auth = FirebaseAuth.instance; + try { + auth.sendPasswordResetEmail(email: email).then((value) { + print("reset password"); + }).onError((error, stackTrace) { + print("Not registered with $email"); + }); + } catch (err) { + throw Exception(err); + } + } + + Future login(String email, String pass) async { + final FirebaseAuth auth = FirebaseAuth.instance; + try { + auth + .signInWithEmailAndPassword(email: email, password: pass) + .then((value) { + Navigator.push( + context, MaterialPageRoute(builder: (context) => home())); + }).onError((error, stackTrace) { + FloatingSnackBar( + message: 'incorrect password', + context: context, + textColor: Colors.black, + textStyle: const TextStyle(color: Color.fromARGB(255, 255, 0, 0)), + duration: const Duration(milliseconds: 4000), + backgroundColor: Colors.white, + ); + }); + } catch (err) { + throw Exception(err); + } + } + @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.blue.shade100, + backgroundColor: Colors.orange.shade100, body: SingleChildScrollView( child: Column( children: [ @@ -48,71 +93,99 @@ class _loginpageState extends State { borderRadius: BorderRadius.all(Radius.circular(40.0)), color: Colors.white, ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const SizedBox( - height: 90.0, - ), - Container( - padding: const EdgeInsets.symmetric( - horizontal: 20.0), - child: TextField( - style: const TextStyle(color: Colors.blue), - decoration: InputDecoration( - hintText: "Email address", - hintStyle: TextStyle( - color: Colors.blue.shade200), - border: InputBorder.none, - icon: const Icon( - Icons.email, - color: Colors.blue, - )), - )), - Container( - padding: const EdgeInsets.only( - left: 20.0, right: 20.0, bottom: 10.0), - child: Divider( - color: Colors.blue.shade400, + child: Form( + key: _formkey, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox( + height: 90.0, ), - ), - Container( - padding: const EdgeInsets.symmetric( - horizontal: 20.0), - child: TextField( - style: const TextStyle(color: Colors.blue), - decoration: InputDecoration( - hintText: "Password", - hintStyle: TextStyle( - color: Colors.blue.shade200), - border: InputBorder.none, - icon: const Icon( - Icons.lock, - color: Colors.blue, - )), - )), - Container( - padding: const EdgeInsets.only( - left: 20.0, right: 20.0, bottom: 10.0), - child: Divider( - color: Colors.blue.shade400, + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextFormField( + style: const TextStyle(color: Colors.black), + controller: email, + validator: (val) => val!.length == 0 + ? "Enter the email" + : null, + decoration: InputDecoration( + hintText: "Email address", + hintStyle: TextStyle( + color: Colors.black, + ), + icon: const Icon( + Icons.email, + color: + Color.fromARGB(255, 235, 146, 69), + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), ), - ), - Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Container( - padding: const EdgeInsets.only(right: 20.0), - child: const Text( - "Forgot Password", - style: TextStyle(color: Colors.black45), - )) - ], - ), - const SizedBox( - height: 10.0, - ), - ]), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20.0), + child: TextFormField( + controller: pass, + validator: (val) => val!.length == 0 + ? "Enter the password" + : null, + obscureText: _obscure, + style: const TextStyle(color: Colors.black), + obscuringCharacter: "*", + decoration: InputDecoration( + hintText: "Password", + suffixIcon: IconButton( + icon: _obscure + ? const Icon(Icons.visibility_off) + : const Icon(Icons.visibility), + onPressed: () { + setState(() { + _obscure = !_obscure; + }); + }, + ), + hintStyle: TextStyle( + color: Colors.black, + ), + icon: const Icon( + Icons.lock, + color: + Color.fromARGB(255, 235, 146, 69), + )), + )), + Container( + padding: const EdgeInsets.only( + left: 20.0, right: 20.0, bottom: 10.0), + ), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + GestureDetector( + onTap: () { + if (_formkey.currentState!.validate()) { + Forgot(email.text.trim()); + } + }, + child: Container( + padding: + const EdgeInsets.only(right: 20.0), + child: const Text( + "Forgot Password", + style: + TextStyle(color: Colors.black87), + )), + ) + ], + ), + const SizedBox( + height: 10.0, + ), + ]), + ), ), ), const Row( @@ -120,8 +193,11 @@ class _loginpageState extends State { children: [ CircleAvatar( radius: 40.0, - backgroundColor: Color.fromRGBO(25, 121, 205, 0.904), - child: Icon(Icons.person), + backgroundColor: Color.fromARGB(255, 235, 146, 69), + child: Icon( + Icons.person, + color: Colors.black, + ), ), ], ), @@ -133,11 +209,17 @@ class _loginpageState extends State { style: ElevatedButton.styleFrom( shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(40.0)), - backgroundColor: Colors.blue, + backgroundColor: Color.fromARGB(255, 235, 146, 69), ), - onPressed: () {}, + onPressed: () { + setState(() { + if (_formkey.currentState!.validate()) { + login(email.text.trim(), pass.text.trim()); + } + }); + }, child: const Text("Login", - style: TextStyle(color: Colors.white70)), + style: TextStyle(color: Colors.black)), ), ), ), @@ -156,7 +238,7 @@ class _loginpageState extends State { const SignupOnePage())); }, child: const Text("Sign Up", - style: TextStyle(color: Colors.blue, fontSize: 18.0)), + style: TextStyle(color: Colors.black, fontSize: 18.0)), ) ], ) diff --git a/lib/Screens/pickscreen.dart b/lib/Screens/pickscreen.dart index 4d8177b..0174134 100644 --- a/lib/Screens/pickscreen.dart +++ b/lib/Screens/pickscreen.dart @@ -1,20 +1,46 @@ +import 'package:Learner/Screens/StudyScreen.dart'; import 'package:Learner/Screens/quizscreen.dart'; import 'package:flutter/material.dart'; import 'package:lottie/lottie.dart'; -class pickscreen extends StatelessWidget { - const pickscreen({ - super.key, - required this.lis, - }); +class pickscreen extends StatefulWidget { + const pickscreen( + {super.key, required this.lis, required this.std, required this.ab}); final List lis; + final List std; + final String ab; + @override + State createState() => _pickscreenState(); +} + +class _pickscreenState extends State { @override Widget build(BuildContext context) { return Scaffold( + appBar: AppBar( + title: Text( + '${widget.ab}', + style: TextStyle( + color: Colors.black, + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + centerTitle: true, + backgroundColor: Color.fromARGB(255, 255, 121, 0), + leading: GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.arrow_back_ios)), + ), body: Column( children: [ + SizedBox( + height: 8, + ), Center( child: Padding( padding: const EdgeInsets.only(top: 30), @@ -22,12 +48,23 @@ class pickscreen extends StatelessWidget { borderRadius: BorderRadius.only( topLeft: Radius.circular(30), ), - child: Container( - width: 285, - height: 230, - color: Color.fromARGB(255, 255, 195, 195), - child: - Lottie.asset('assets/studylottie.json', fit: BoxFit.fill), + child: GestureDetector( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => StudyScreen( + l: widget.std[0], + sab: widget.ab, + ))); + }, + child: Container( + width: 285, + height: 230, + color: Color.fromARGB(255, 255, 215, 180), + child: Lottie.asset('assets/studylottie.json', + fit: BoxFit.fill), + ), ), ), ), @@ -39,7 +76,7 @@ class pickscreen extends StatelessWidget { child: Container( width: 285, height: 75, - color: Color.fromARGB(255, 253, 165, 165), + color: Color.fromARGB(255, 255, 152, 61), child: Center( child: Text( 'Study', @@ -63,13 +100,14 @@ class pickscreen extends StatelessWidget { context, MaterialPageRoute( builder: (context) => quizapp( - wid: lis, + wid: widget.lis, + qab: widget.ab, ))); }, child: Container( width: 285, height: 230, - color: Color.fromARGB(255, 255, 195, 195), + color: Color.fromARGB(255, 255, 215, 180), child: Lottie.asset('assets/testlottie.json', fit: BoxFit.fill), ), @@ -84,7 +122,7 @@ class pickscreen extends StatelessWidget { child: Container( width: 285, height: 75, - color: Color.fromARGB(255, 253, 165, 165), + color: Color.fromARGB(255, 255, 152, 61), child: Center( child: Text( 'Test', diff --git a/lib/Screens/quizscreen.dart b/lib/Screens/quizscreen.dart index 07865aa..9005424 100644 --- a/lib/Screens/quizscreen.dart +++ b/lib/Screens/quizscreen.dart @@ -2,11 +2,13 @@ import 'package:Learner/Screens/resultscreen.dart'; import 'package:Learner/widgets/answercard.dart'; import 'package:Learner/widgets/nextbutton.dart'; import 'package:flutter/material.dart'; +import 'package:solid_bottom_sheet/solid_bottom_sheet.dart'; class quizapp extends StatefulWidget { - const quizapp({super.key, required this.wid}); + const quizapp({super.key, required this.wid, required this.qab}); final List wid; + final qab; @override State createState() => _quizappState(); @@ -37,20 +39,51 @@ class _quizappState extends State { }); } - void toggleSolutionVisibility() { - setState(() { - isSolutionVisible = !isSolutionVisible; - }); - } + SolidController _controller = SolidController(); @override Widget build(BuildContext context) { final question = widget.wid[questionIndex]; bool isLastQuestion = questionIndex == widget.wid.length - 1; return Scaffold( - backgroundColor: Colors.deepPurple, + backgroundColor: const Color.fromARGB(255, 255, 255, 255), appBar: AppBar( - backgroundColor: Colors.deepPurpleAccent, + centerTitle: true, + title: Text( + "${widget.qab}", + style: TextStyle( + color: Colors.black, + fontStyle: FontStyle.italic, + fontWeight: FontWeight.bold, + fontSize: 23), + ), + backgroundColor: Color.fromARGB(255, 255, 121, 0), + ), + bottomSheet: SolidBottomSheet( + maxHeight: 500, + controller: _controller, + draggableBody: true, + headerBar: Container(color: Color.fromARGB(100, 150, 420, 150)), + body: Container( + color: Color.fromARGB(255, 255, 255, 255), + height: 10, + child: Center( + child: Column( + children: [ + SizedBox( + height: 30, + ), + Padding( + padding: const EdgeInsets.all(10), + child: Text( + "${question.Solution}", + style: TextStyle(fontSize: 20, color: Colors.black), + ), + ), + ], + ), + ), + ), ), body: SingleChildScrollView( child: Padding( @@ -62,7 +95,7 @@ class _quizappState extends State { "${question.question}", style: TextStyle( fontSize: 23, - color: Colors.white, + color: const Color.fromARGB(255, 0, 0, 0), ), textAlign: TextAlign.start, ), @@ -101,35 +134,18 @@ class _quizappState extends State { : null, lable: 'Next', ), - Column( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - GestureDetector( - onTap: toggleSolutionVisibility, - child: Text( - 'Solution', - style: TextStyle( - decoration: TextDecoration.underline, - color: Colors.blue, - ), - ), - ), - ], - ), - Visibility( - visible: isSolutionVisible, - child: Padding( - padding: const EdgeInsets.all(16.0), - child: Text( - '${question.Solution}', - style: TextStyle(fontSize: 18), - ), - ), - ), ], ), ), ), + floatingActionButton: FloatingActionButton( + focusColor: Color.fromARGB(255, 211, 154, 154), + hoverColor: Color.fromARGB(255, 211, 154, 154), + backgroundColor: Color.fromARGB(255, 255, 121, 0), + child: Icon(Icons.remove_red_eye), + onPressed: () { + _controller.isOpened ? _controller.hide() : _controller.show(); + }), ); } } diff --git a/lib/Screens/resultscreen.dart b/lib/Screens/resultscreen.dart index 47bcc4f..a49112e 100644 --- a/lib/Screens/resultscreen.dart +++ b/lib/Screens/resultscreen.dart @@ -1,5 +1,5 @@ import 'package:Learner/main.dart'; -import 'package:Learner/widgets/nextbutton.dart'; +import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; class result_screen extends StatelessWidget { @@ -11,7 +11,7 @@ class result_screen extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Colors.deepPurpleAccent, + backgroundColor: Color.fromARGB(255, 255, 232, 212), body: SingleChildScrollView( child: Center( child: Column( @@ -24,11 +24,11 @@ class result_screen extends StatelessWidget { style: TextStyle( fontSize: 34, fontWeight: FontWeight.w500, - color: Colors.white, + color: Color.fromARGB(255, 0, 0, 0), ), ), SizedBox( - height: 150, + height: 100, ), Stack( alignment: Alignment.center, @@ -39,38 +39,58 @@ class result_screen extends StatelessWidget { child: CircularProgressIndicator( strokeWidth: 12, value: score / 20, - color: Colors.lightGreen, - backgroundColor: Colors.white, + color: Color.fromARGB(255, 243, 162, 76), + backgroundColor: Color.fromARGB(255, 125, 125, 125), ), ), - Column( - children: [ - Text( - '${(score / lis.length * 100.round())}%', - style: - const TextStyle(fontSize: 80, color: Colors.white), - ), - const SizedBox( - height: 10, - ), - Text( - score.toString() + "/20", - style: TextStyle(fontSize: 10, color: Colors.white), - ), - ], + Center( + child: Column( + children: [ + Center( + child: Text( + '${(score / lis.length * 100).toInt()}%', + style: const TextStyle( + fontSize: 80, + color: Color.fromARGB(255, 0, 0, 0)), + ), + ), + const SizedBox( + height: 15, + ), + Text( + score.toString() + "/20", + style: TextStyle( + fontSize: 25, + color: const Color.fromARGB(255, 2, 2, 2)), + ), + ], + ), ) ], ), SizedBox( - height: 150, - ), - RectunglerButton( - onPressed: () { - Navigator.of(context).pushReplacement( - MaterialPageRoute(builder: (_) => home())); - }, - lable: "back", + height: 125, ), + CupertinoButton( + color: Color.fromARGB(255, 255, 152, 61), + child: Text( + "back", + style: TextStyle( + color: Colors.black, + fontSize: 25, + fontWeight: FontWeight.bold), + ), + onPressed: () { + Navigator.of(context) + .pop(MaterialPageRoute(builder: (_) => home())); + }) + // RectunglerButton( + // onPressed: () { + // Navigator.of(context) + // .pop(MaterialPageRoute(builder: (_) => home())); + // }, + // lable: "back", + // ), ], ), ), diff --git a/lib/Screens/splashscreen.dart b/lib/Screens/splashscreen.dart index 53d53c8..6bc3466 100644 --- a/lib/Screens/splashscreen.dart +++ b/lib/Screens/splashscreen.dart @@ -1,10 +1,8 @@ -import 'package:Learner/bottomnavbar.dart'; -import 'package:animated_text_kit/animated_text_kit.dart'; +import 'package:Learner/pages/AuthChange.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:lottie/lottie.dart'; - class Splashscreen extends StatefulWidget { const Splashscreen({super.key}); @@ -19,8 +17,8 @@ class _SplashscreenState extends State super.initState(); SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersive); Future.delayed(const Duration(seconds: 5), () { - Navigator.of(context) - .pushReplacement(MaterialPageRoute(builder: (context) => MyHomePage(title: '',))); + Navigator.of(context).pushReplacement( + MaterialPageRoute(builder: (context) => AuthChange())); }); } @@ -31,17 +29,8 @@ class _SplashscreenState extends State overlays: SystemUiOverlay.values); } - @override Widget build(BuildContext context) { - - -const colorizeTextStyle = TextStyle( - fontSize: 33.0, - fontFamily: 'Horizon', - fontWeight: FontWeight.bold -); - return Scaffold( backgroundColor: const Color.fromARGB(255, 250, 251, 250), // body: Container( @@ -50,36 +39,44 @@ const colorizeTextStyle = TextStyle( // ) body: Column( children: [ - SizedBox( - height: 100, - ), - AnimatedTextKit( - - animatedTexts: [ - - WavyAnimatedText('CAREER BOOSTER',textStyle: colorizeTextStyle,), - ], - isRepeatingAnimation: true, - - ), - - Container(height: 550, + SizedBox( + height: 100, + ), + Text( + "CAREER BOOSTER", + style: TextStyle(fontWeight: FontWeight.bold, fontSize: 24), + ), + Container( + height: 550, child: Center( child: Lottie.network( - 'https://lottie.host/eaf5fc3e-1c79-406a-ba66-46bb53f4a177/m7uG8N8b1V.json'), + 'https://lottie.host/eaf5fc3e-1c79-406a-ba66-46bb53f4a177/m7uG8N8b1V.json'), ), ), - - Text('Powered by',style: TextStyle(fontSize: 15,fontWeight: FontWeight.normal,color: Colors.black) ,), - RichText(text: TextSpan( - text: 'Technical hub',style: TextStyle(fontSize: 25,fontWeight: FontWeight.bold,color: Color.fromARGB(255, 3, 135, 58)) , - children : [ - TextSpan(text: ' Traines',style: TextStyle(fontSize: 20,fontWeight: FontWeight.bold,color: Colors.black)), + Text( + 'Created by', + style: TextStyle( + fontSize: 15, + fontWeight: FontWeight.normal, + color: Colors.black), + ), + RichText( + text: TextSpan( + text: 'Tech Titans', + style: TextStyle( + fontSize: 25, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 255, 130, 5)), + children: [ + TextSpan( + text: ' Team', + style: TextStyle( + fontSize: 20, + fontWeight: FontWeight.bold, + color: Colors.black)), ], )) ], - ) - - ); + )); } } diff --git a/lib/bottomnavbar.dart b/lib/bottomnavbar.dart deleted file mode 100644 index bacf352..0000000 --- a/lib/bottomnavbar.dart +++ /dev/null @@ -1,169 +0,0 @@ -import 'package:Learner/widgets/widgets.dart'; -import 'package:Learner/chatgpt.dart'; -import 'package:Learner/main.dart'; -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_floating_bottom_bar/flutter_floating_bottom_bar.dart'; - -void main() { - runApp(const app()); -} - -class app extends StatelessWidget { - const app({super.key}); - - @override - Widget build(BuildContext context) { - return MaterialApp( - home: MyHomePage( - title: '', - ), - ); - } -} - -class MyHomePage extends StatefulWidget { - // ignore: prefer_const_constructors_in_immutables - MyHomePage({Key? key, required this.title}) : super(key: key); - final String title; - - @override - // ignore: library_private_types_in_public_api - _MyHomePageState createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State - with SingleTickerProviderStateMixin { - late int currentPage; - late TabController tabController; - final screens = [home(), chatggpt(), Aptitude(), Aptitude()]; - final List colors = [ - Colors.yellow, - Color.fromARGB(255, 58, 14, 255), - Color.fromARGB(255, 13, 109, 2), - Color.fromARGB(255, 255, 0, 0), - Colors.pink - ]; - - @override - void initState() { - currentPage = 0; - tabController = TabController(length: 4, vsync: this); - tabController.animation!.addListener( - () { - final value = tabController.animation!.value.round(); - if (value != currentPage && mounted) { - changePage(value); - } - }, - ); - super.initState(); - } - - void changePage(int newPage) { - setState(() { - currentPage = newPage; - }); - } - - @override - void dispose() { - tabController.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final Color unselectedColor = colors[currentPage].computeLuminance() < 0.5 - ? Colors.black - : Colors.white; - return SafeArea( - child: Scaffold( - body: BottomBar( - // ignore: sort_child_properties_last - child: TabBar( - indicatorPadding: const EdgeInsets.fromLTRB(6, 0, 6, 0), - controller: tabController, - indicator: UnderlineTabIndicator( - borderSide: BorderSide( - color: currentPage == 0 - ? colors[0] - : currentPage == 1 - ? colors[1] - : currentPage == 2 - ? colors[2] - : currentPage == 3 - ? colors[3] - : unselectedColor, - width: 3), - insets: const EdgeInsets.fromLTRB(16, 0, 16, 8)), - tabs: [ - SizedBox( - height: 55, - width: 40, - child: Center( - child: Icon( - Icons.home, - color: currentPage == 0 ? colors[0] : unselectedColor, - )), - ), - SizedBox( - height: 55, - width: 40, - child: Center( - child: Icon( - Icons.search, - color: currentPage == 1 ? colors[1] : unselectedColor, - )), - ), - SizedBox( - height: 55, - width: 40, - child: Center( - child: Icon( - Icons.add, - color: currentPage == 2 ? colors[2] : unselectedColor, - )), - ), - SizedBox( - height: 55, - width: 40, - child: Center( - child: Icon( - Icons.favorite, - color: currentPage == 3 ? colors[3] : unselectedColor, - )), - ), - ], - ), - fit: StackFit.expand, - - borderRadius: BorderRadius.circular(500), - duration: const Duration(seconds: 1), - curve: Curves.decelerate, - showIcon: true, - width: MediaQuery.of(context).size.width * 0.8, - barColor: colors[currentPage].computeLuminance() > 0.5 - ? Color.fromARGB(71, 11, 0, 0) - : Color.fromARGB(71, 11, 0, 0), - start: 2, - end: 0, - offset: 10, - barAlignment: Alignment.bottomCenter, - iconHeight: 35, - iconWidth: 35, - reverse: false, - hideOnScroll: true, - scrollOpposite: false, - onBottomBarHidden: () {}, - onBottomBarShown: () {}, - body: (context, controller) => TabBarView( - controller: tabController, - dragStartBehavior: DragStartBehavior.down, - physics: BouncingScrollPhysics(), - children: screens), - ), - ), - ); - } -} diff --git a/lib/chatgpt.dart b/lib/chatgpt.dart deleted file mode 100644 index fc3ecd7..0000000 --- a/lib/chatgpt.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:Learner/pages/chat_page.dart'; -import 'package:flutter/material.dart'; - -class chatggpt extends StatefulWidget { - const chatggpt({super.key}); - - @override - State createState() => _chatggptState(); -} - -class _chatggptState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - body: GestureDetector( - onTap: (){ - Navigator.push(context, MaterialPageRoute(builder: (context)=>chatpage())); - }, - child: Center( - child: ClipRRect(borderRadius: BorderRadius.circular(12), - child: Container( - width: 250, - height: 50, - color: Color.fromARGB(255, 10, 10, 10), - child: Center(child: Text('press to get chat GPT', style: TextStyle( - fontStyle: FontStyle.italic, - fontWeight: FontWeight.bold, - color: Colors.white, - fontSize: 23),),), - ), - ), - ), - ), - ); - } -} \ No newline at end of file diff --git a/lib/consts.dart b/lib/consts.dart deleted file mode 100644 index 2a1066d..0000000 --- a/lib/consts.dart +++ /dev/null @@ -1,2 +0,0 @@ - -const OPENAI_API_KEY = "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"; diff --git a/lib/data/ece/digitalelectronics.dart b/lib/data/ece/digitalelectronics.dart deleted file mode 100644 index aefb661..0000000 --- a/lib/data/ece/digitalelectronics.dart +++ /dev/null @@ -1,203 +0,0 @@ -class QuestionModel { - final String question; - final List options; - final correctAnswerIndex; - final String Solution; - - const QuestionModel({ - required this.question, - required this.options, - required this.correctAnswerIndex, - required this.Solution, - }); -} - -List digital = [ - QuestionModel( - question: - "1. What is the fundamental building block of digital logic circuits?", - options: ["A. Transistor", "B. Resistor", "C. Capacitor", "D. Diode"], - correctAnswerIndex: 0, - Solution: - "The correct answer is A. Transistor. Transistors are the basic building blocks of digital logic circuits. They can act as switches to control the flow of electrical current in a digital system."), - QuestionModel( - question: "2. Which logic gate performs the logical AND operation?", - options: ["A. OR gate", "B. NOT gate", "C. AND gate", "D. XOR gate"], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. AND gate. The AND gate produces an output true (1) only when all its inputs are true (1). It performs the logical AND operation."), - QuestionModel( - question: "3. What is the binary representation of the decimal number 9?", - options: ["A. 1001", "B. 1100", "C. 1010", "D. 1111"], - correctAnswerIndex: 0, - Solution: - "The correct answer is A. 1001. In binary, the decimal number 9 is represented as 1001."), - QuestionModel( - question: - "4. Which flip-flop is used to store one bit of data in a digital circuit?", - options: [ - "A. AND flip-flop", - "B. XOR flip-flop", - "C. D flip-flop", - "D. OR flip-flop" - ], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. D flip-flop. A D flip-flop, also known as a data or delay flip-flop, is used to store one bit of data in a digital circuit."), - QuestionModel( - question: - "5. What is the primary function of a decoder in digital electronics?", - options: [ - "A. Amplify signals", - "B. Perform arithmetic operations", - "C. Convert binary data to a specific code", - "D. Store data temporarily" - ], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. Convert binary data to a specific code. A decoder is used to convert binary data into a specific code or set of outputs based on the input values."), - QuestionModel( - question: - "6. In a binary system, how many different values can be represented by 3 bits?", - options: ["A. 2", "B. 4", "C. 8", "D. 16"], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. 8. With 3 bits, you can represent 2^3 = 8 different values in a binary system."), - QuestionModel( - question: - "7. What does the term 'logic level' refer to in digital electronics?", - options: [ - "A. The voltage level of a digital signal", - "B. The speed of data transfer", - "C. The size of the integrated circuit", - "D. The number of transistors in a gate" - ], - correctAnswerIndex: 0, - Solution: - "The correct answer is A. The voltage level of a digital signal. Logic level refers to the voltage level that represents a binary state in digital electronics, typically high (1) or low (0)."), - QuestionModel( - question: "8. Which gate is equivalent to the Boolean expression A + B?", - options: ["A. AND gate", "B. OR gate", "C. XOR gate", "D. NOT gate"], - correctAnswerIndex: 1, - Solution: - "The correct answer is B. OR gate. The Boolean expression A + B represents the logical OR operation, which is performed by the OR gate."), - QuestionModel( - question: "9. What is the purpose of a multiplexer in digital circuits?", - options: [ - "A. Perform mathematical calculations", - "B. Select one of several data inputs and route it to the output", - "C. Store data temporarily", - "D. Amplify signals" - ], - correctAnswerIndex: 1, - Solution: - "The correct answer is B. Select one of several data inputs and route it to the output. A multiplexer (MUX) is used to select one of multiple data inputs and pass it to the output based on control inputs."), - QuestionModel( - question: - "10. Which binary representation is used to represent a negative number in two's complement form?", - options: [ - "A. All 0s", - "B. All 1s", - "C. Sign bit as 0 and magnitude in binary", - "D. Sign bit as 1 and magnitude in binary" - ], - correctAnswerIndex: 3, - Solution: - "The correct answer is D. Sign bit as 1 and magnitude in binary. In two's complement form, a negative number is represented by setting the most significant bit (sign bit) to 1 and representing the magnitude of the number in binary."), - QuestionModel( - question: - "11. Which gate performs the logical exclusive OR (XOR) operation?", - options: ["A. AND gate", "B. OR gate", "C. XOR gate", "D. NOT gate"], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. XOR gate. The XOR gate produces an output true (1) when the number of true inputs is odd, making it perform the logical exclusive OR (XOR) operation."), - QuestionModel( - question: - "12. What is the primary function of a counter in digital electronics?", - options: [ - "A. Amplify signals", - "B. Store data temporarily", - "C. Count events or occurrences", - "D. Perform mathematical calculations" - ], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. Count events or occurrences. A counter is a digital circuit used to count the number of events or occurrences of a specific event."), - QuestionModel( - question: "13. In a digital logic circuit, what does a NOT gate do?", - options: [ - "A. Performs addition", - "B. Inverts the input signal", - "C. Multiplies inputs", - "D. Stores data temporarily" - ], - correctAnswerIndex: 1, - Solution: - "The correct answer is B. Inverts the input signal. A NOT gate, also known as an inverter, changes the input signal from true (1) to false (0) and vice versa."), - QuestionModel( - question: - "14. What is the primary function of a flip-flop in digital circuits?", - options: [ - "A. Perform mathematical calculations", - "B. Store data temporarily", - "C. Amplify signals", - "D. Convert analog signals to digital" - ], - correctAnswerIndex: 1, - Solution: - "The correct answer is B. Store data temporarily. A flip-flop is a bistable multivibrator that stores binary information temporarily in digital circuits."), - QuestionModel( - question: - "15. What is the binary representation of the decimal number 10?", - options: ["A. 1000", "B. 1010", "C. 1100", "D. 1110"], - correctAnswerIndex: 1, - Solution: - "The correct answer is B. 1010. In binary, the decimal number 10 is represented as 1010."), - QuestionModel( - question: "16. Which gate performs the logical NOR operation?", - options: ["A. OR gate", "B. AND gate", "C. NOT gate", "D. NOR gate"], - correctAnswerIndex: 3, - Solution: - "The correct answer is D. NOR gate. The NOR gate performs the logical NOR operation, which is the complement of the OR operation."), - QuestionModel( - question: - "17. What is the function of a shift register in digital electronics?", - options: [ - "A. Store data temporarily", - "B. Amplify signals", - "C. Perform arithmetic calculations", - "D. Shift binary data left or right" - ], - correctAnswerIndex: 3, - Solution: - "The correct answer is D. Shift binary data left or right. A shift register is a digital circuit that can shift binary data in a specified direction (left or right) based on control signals."), - QuestionModel( - question: "18. Which gate performs the logical NAND operation?", - options: ["A. OR gate", "B. AND gate", "C. XOR gate", "D. NAND gate"], - correctAnswerIndex: 3, - Solution: - "The correct answer is D. NAND gate. The NAND gate performs the logical NAND operation, which is the complement of the AND operation."), - QuestionModel( - question: "19. What is the purpose of a decoder in digital circuits?", - options: [ - "A. Amplify signals", - "B. Perform mathematical calculations", - "C. Convert binary data to a specific code", - "D. Store data temporarily" - ], - correctAnswerIndex: 2, - Solution: - "The correct answer is C. Convert binary data to a specific code. A decoder is used to convert binary data into a specific code or set of outputs based on the input values."), - QuestionModel( - question: - "20. What is the primary function of a multiplexer in digital electronics?", - options: [ - "A. Perform mathematical calculations", - "B. Select one of several data inputs and route it to the output", - "C. Store data temporarily", - "D. Amplify signals" - ], - correctAnswerIndex: 1, - Solution: - "The correct answer is B. Select one of several data inputs and route it to the output. A multiplexer (MUX) is used to select one of multiple data inputs and pass it to the output based on control inputs.") -]; diff --git a/lib/data/mechanical/mechanicallist.dart b/lib/data/mechanical/mechanicallist.dart index d02acb5..9f02f21 100644 --- a/lib/data/mechanical/mechanicallist.dart +++ b/lib/data/mechanical/mechanicallist.dart @@ -14,7 +14,28 @@ class QuestionModel { }); } -List mec = []; +List mec = [ + bits(a: Aerospace), + bits(a: Automotive), + bits(a: bearings), + bits(a: biomechanics), + bits(a: CAD), + bits(a: Computational), + bits(a: controlsystem), + bits(a: fluidflow), + bits(a: fluidmechanics), + bits(a: fluidpowersystem), + bits(a: heattransfer), + bits(a: Kinematicsanddynamics), + bits(a: machineElements), + bits(a: machinedesign), + bits(a: manufacturingprocess), + bits(a: materialscience), + bits(a: mechanics), + bits(a: mechatronics), + bits(a: solidmechanics), + bits(a: thermodynamics), +]; List Aerospace = [ QuestionModel( diff --git a/lib/main.dart b/lib/main.dart index f3c7ed7..2a54fb3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,11 +1,19 @@ +import 'dart:io'; +import 'dart:typed_data'; + +import 'package:Learner/Screens/Signup.dart'; +import 'package:Learner/pages/chat_page.dart'; import 'package:Learner/widgets/widgets.dart'; import 'package:Learner/Screens/splashscreen.dart'; -import 'package:animated_text_kit/animated_text_kit.dart'; +import 'package:firebase_core/firebase_core.dart'; import 'package:flutter/material.dart'; -import 'package:page_route_animator/page_route_animator.dart'; -import 'package:gradient_borders/box_borders/gradient_box_border.dart'; +import 'package:flutter_staggered_animations/flutter_staggered_animations.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:image_picker/image_picker.dart'; -void main() { +void main() async { + WidgetsFlutterBinding.ensureInitialized(); + await Firebase.initializeApp(); runApp(const app()); } @@ -14,7 +22,7 @@ class app extends StatelessWidget { @override Widget build(BuildContext context) { - return const MaterialApp( + return MaterialApp( debugShowCheckedModeBanner: false, home: Splashscreen(), ); @@ -72,105 +80,381 @@ class _homeState extends State { screen: Artifical()), ]; + Future logout() async { + final FirebaseAuth auth = FirebaseAuth.instance; + await auth.signOut(); + Navigator.pushReplacement( + context, MaterialPageRoute(builder: (context) => SignupOnePage())); + } + + Uint8List? _image; + File? selectedIMage; + @override Widget build(BuildContext context) { - const colorizeColors = [ - Color.fromARGB(255, 250, 248, 249), - Colors.blue, - Colors.yellow, - Colors.red, - ]; - - const colorizeTextStyle = TextStyle( - fontSize: 25.0, fontFamily: 'Horizon', fontWeight: FontWeight.bold); return Scaffold( backgroundColor: Color.fromARGB(255, 255, 255, 255), - appBar: AppBar( - title: AnimatedTextKit( - totalRepeatCount: 6, - // repeatForever: true, - animatedTexts: [ - ColorizeAnimatedText( - 'Boost Your Career', - textStyle: colorizeTextStyle, - colors: colorizeColors, - ), - ], - isRepeatingAnimation: true, - ), - centerTitle: true, - backgroundColor: Colors.black, - ), drawer: Drawer( - child: ListView( - children: const [ - DrawerHeader( - child: Text('Drawer Header'), + width: 250, + backgroundColor: Color.fromARGB(255, 255, 255, 255), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(25)), + child: Column( + children: [ + SizedBox( + height: 250, + child: DrawerHeader( + child: Column( + children: [ + Stack(children: [ + _image != null + ? CircleAvatar( + radius: 80, + backgroundImage: MemoryImage(_image!), + ) + : const CircleAvatar( + radius: 80, + backgroundColor: Colors.white, + backgroundImage: NetworkImage( + "https://cdn.pixabay.com/photo/2019/08/11/18/59/icon-4399701_640.png"), + ), + Positioned( + bottom: 0, + left: 120, + child: IconButton( + onPressed: () { + showImagePickerOption(context); + }, + icon: Icon( + Icons.add_a_photo, + size: 35, + ))), + ]) + ], + )), + ), + const Divider( + height: 1, + thickness: 0.5, + color: Colors.black, + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 255, 255, 255), + ), + ListTile( + leading: const Icon( + Icons.home_outlined, + color: Colors.black87, + ), + title: const Text( + 'home', + style: TextStyle( + fontStyle: FontStyle.normal, + fontWeight: FontWeight.bold, + fontSize: 16), + ), + onTap: () { + Navigator.pop( + context, + MaterialPageRoute( + builder: (context) => home(), + )); + }, + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 255, 255, 255), + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 226, 226, 226), + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 0, 0, 0), + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 221, 221, 221), + ), + ListTile( + leading: const Icon( + Icons.contact_support_outlined, + color: Colors.black87, + ), + title: const Text( + 'Contact us', + style: TextStyle( + fontStyle: FontStyle.normal, + fontWeight: FontWeight.bold, + fontSize: 16), + ), + onTap: () {}, + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 0, 0, 0), + ), + ListTile( + leading: const Icon( + Icons.share, + color: Colors.black87, + ), + title: const Text( + 'Share', + style: TextStyle( + fontStyle: FontStyle.normal, + fontWeight: FontWeight.bold, + fontSize: 16), + ), + onTap: () {}, + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 0, 0, 0), ), ListTile( - title: Text('Item 1'), + leading: const Icon( + Icons.app_blocking_outlined, + color: Colors.black87, + ), + title: const Text( + 'About us', + style: TextStyle( + fontStyle: FontStyle.normal, + fontWeight: FontWeight.bold, + fontSize: 16), + ), + onTap: () {}, + ), + const Divider( + thickness: 0.1, + height: 1, + color: Color.fromARGB(255, 0, 0, 0), ), ListTile( - title: Text('Item 2'), + leading: const Icon( + Icons.logout_sharp, + color: Colors.black87, + ), + title: const Text( + 'Logout', + style: TextStyle( + fontStyle: FontStyle.normal, + fontWeight: FontWeight.bold, + fontSize: 16), + ), + onTap: () { + showDialog( + context: context, + builder: (context) { + return AlertDialog( + title: const Text( + 'Do you want to logout', + style: TextStyle( + fontStyle: FontStyle.normal, + fontWeight: FontWeight.bold, + fontSize: 20), + ), + actions: [ + TextButton( + onPressed: () { + logout(); + }, + child: const Text('Yes')), + TextButton( + onPressed: () { + Navigator.pop(context); + }, + child: const Text('No')) + ], + ); + }); + }, ), ], ), ), - body: GridView.builder( - gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: 2, // Number of columns in the grid - crossAxisSpacing: 8.0, // Spacing between columns - mainAxisSpacing: 8.0, // Spacing between rows - ), - itemCount: 10, - itemBuilder: (context, i) { - return Padding( - padding: const EdgeInsets.all(4), - child: Card( - color: Colors.transparent, - elevation: 30, - child: GestureDetector( + appBar: AppBar( + iconTheme: IconThemeData(color: Colors.black), + elevation: 0, + shadowColor: Colors.black, + actions: [ + GestureDetector( onTap: () { Navigator.push(context, - MaterialPageRoute(builder: (context) => li[i].screen)); + MaterialPageRoute(builder: (context) => chatpage())); }, - child: Container( - decoration: BoxDecoration( - color: Color.fromRGBO(243, 244, 244, 0.612), - border: const GradientBoxBorder( - gradient: LinearGradient(colors: [ - Color.fromARGB(200, 0, 0, 0), - Color.fromARGB(193, 0, 0, 0) - ]), - width: 2, - ), - borderRadius: BorderRadius.circular(16)), - child: Column( - children: [ - const SizedBox( - height: 10, + child: Image( + width: 30, + image: NetworkImage( + "https://cdn-icons-png.flaticon.com/128/11865/11865326.png"))), + SizedBox( + width: 10, + ) + ], + title: Center( + child: Text( + "Boost Your Career", + style: TextStyle( + color: Colors.black, + fontWeight: FontWeight.bold, + fontSize: 22), + ), + ), + backgroundColor: Color.fromARGB(255, 255, 121, 0)), + body: AnimationLimiter( + child: GridView.builder( + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, // Number of columns in the grid + crossAxisSpacing: 8.0, // Spacing between columns + mainAxisSpacing: 8.0, // Spacing between rows + ), + itemCount: 10, + itemBuilder: (context, i) { + return AnimationConfiguration.staggeredGrid( + position: i, + columnCount: 2, + duration: Duration(milliseconds: 1100), + child: ScaleAnimation( + child: FadeInAnimation( + child: FlipAnimation( + child: SlideAnimation( + child: Padding( + padding: const EdgeInsets.all(4), + child: Card( + elevation: 0, + shadowColor: Colors.orange.shade100, + color: Color.fromARGB(255, 255, 255, 255), + child: GestureDetector( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => li[i].screen)); + }, + child: Container( + decoration: BoxDecoration( + border: Border.all(color: Colors.black), + color: const Color.fromARGB(255, 255, 239, 216), + borderRadius: BorderRadius.circular(16)), + child: Expanded( + child: Column( + children: [ + const SizedBox( + height: 10, + ), + SizedBox( + height: 80, + width: 100, + child: Image( + image: NetworkImage(li[i].imgPath))), + const SizedBox( + height: 15, + ), + Text( + li[i].name, + style: const TextStyle( + fontSize: 21, + fontWeight: FontWeight.bold), + ) + ], + ), + ), + ), + ), ), - SizedBox( - height: 80, - width: 100, - child: Image(image: NetworkImage(li[i].imgPath))), - const SizedBox( - height: 6, + )), + )), + )); + }, + ), + ), + ); + } + + void showImagePickerOption(BuildContext context) { + showModalBottomSheet( + backgroundColor: Colors.white, + context: context, + builder: (builder) { + return Padding( + padding: const EdgeInsets.all(18), + child: SizedBox( + width: MediaQuery.of(context).size.width, + height: MediaQuery.of(context).size.height / 4.5, + child: Row( + children: [ + Expanded( + child: InkWell( + onTap: () { + _pickImageFromGallery(); + }, + child: Column( + children: [ + Icon( + Icons.image, + size: 50, + ), + Text('gallery') + ], ), - Text( - li[i].name, - style: const TextStyle( - fontSize: 21, fontWeight: FontWeight.bold), - ) - ], + ), ), - ), + Expanded( + child: InkWell( + onTap: () { + _pickImageFromCamera(); + }, + child: Column( + children: [ + Icon( + Icons.camera_alt_outlined, + size: 50, + ), + Text('camera') + ], + ), + ), + ) + ], ), ), ); - }, - ), - ); + }); + } + + Future _pickImageFromGallery() async { + // final storageRef =await FirebaseStorage.instance + // .ref().child('userphotos').child("postedimg1"); + // await storageRef.putFile(selectedIMage!); + // final imageUrl=await storageRef.getDownloadURL(); + + final returnImage = + await ImagePicker().pickImage(source: ImageSource.gallery); + if (returnImage == null) return; + setState(() { + selectedIMage = File(returnImage.path); + + _image = File(returnImage.path).readAsBytesSync(); + }); + } + + Future _pickImageFromCamera() async { + final returnImage = + await ImagePicker().pickImage(source: ImageSource.camera); + if (returnImage == null) return; + setState(() { + selectedIMage = File(returnImage.path); + _image = File(returnImage.path).readAsBytesSync(); + }); } } @@ -181,18 +465,176 @@ class Contacts { Contacts({required this.imgPath, required this.name, required this.screen}); } -class appppp extends StatefulWidget { - const appppp({super.key}); - @override - State createState() => _apppppState(); -} -class _apppppState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar(), - ); - } -} + + +// import 'dart:io'; +// import 'dart:typed_data'; +// import 'package:firebase_core/firebase_core.dart'; +// import 'package:firebase_storage/firebase_storage.dart'; +// import 'package:flutter/material.dart'; +// import 'package:image_picker/image_picker.dart'; + +// void main() async{ +// runApp(MyApp()); + +// } +// class MyApp extends StatelessWidget { +// const MyApp({super.key}); + +// @override +// Widget build(BuildContext context) { +// return MaterialApp( +// home: profile(), +// ); +// } +// } + + +// class profile extends StatefulWidget { +// const profile({super.key}); + +// @override +// State createState() => _profileState(); +// } + +// class _profileState extends State { +// Uint8List? _image; +// File? selectedIMage; +// @override +// Widget build(BuildContext context) { +// return Scaffold( appBar: AppBar(leading: IconButton(onPressed: (){ +// // Navigator.push(context, MaterialPageRoute(builder: (context)=>home())); +// },icon: Icon(Icons.arrow_back_ios_new_sharp,color: Colors.red,), +// splashColor: Colors.red,highlightColor: Colors.red[100],), +// title: Text('Profile', +// style: TextStyle(fontWeight: FontWeight.bold, +// color: Colors.red[500],fontSize: 24),), +// centerTitle: true,backgroundColor: Colors.white,elevation: 0, +// ), +// body: +// Column( +// children: [ + +// Stack(children: [ + + +// _image!=null? CircleAvatar(radius: 100 , +// backgroundImage: MemoryImage(_image!), +// ): const CircleAvatar(radius: 100, +// backgroundImage: NetworkImage('https://cdn.pixabay.com/photo/2019/08/11/18/59/icon-4399701_640.png'),), +// Positioned(bottom:0, +// left:120,child: IconButton(onPressed: (){showImagePickerOption(context);},icon: Icon(Icons.add_a_photo,size: 35,color: Colors.red,),) +// ), +// ]), +// ListTile(title: Text('My Account'), +// trailing: Icon(Icons.arrow_forward_ios_outlined,color: Colors.black,), +// leading: Icon(Icons.person,color: Colors.red,), +// ), + + + +// ListTile(title: Text('Feedback'), +// trailing: Icon(Icons.arrow_forward_ios_outlined,color: Colors.black,), +// leading: Icon(Icons.feedback_outlined,color: Colors.red,), +// ), +// ListTile(title: Text('Update'), +// trailing: Icon(Icons.arrow_forward_ios_outlined,color: Colors.black,), +// leading: Icon(Icons.update,color: Colors.red,), +// ), +// ListTile(title: Text('Logout'), +// trailing: Icon(Icons.arrow_forward_ios_outlined,color: Colors.black,), +// leading: Icon(Icons.logout_sharp,color: Colors.red,), +// ), + + +// ], +// ) +// ); +// } +// void showImagePickerOption(BuildContext context) { +// showModalBottomSheet( +// backgroundColor: Colors.white, +// context: context, builder: (builder) { +// return Padding( +// padding: const EdgeInsets.all(18), +// child: SizedBox( +// width: MediaQuery +// .of(context) +// .size +// .width, +// height: MediaQuery +// .of(context) +// .size +// .height / 4.5, +// child: Row( +// children: [Expanded( +// child: InkWell( +// onTap: () { +// _pickImageFromGallery(); +// }, +// child: Column(children: [ +// Icon(Icons.image, size: 50,), Text('gallery')],),), +// ), +// Expanded( +// child: InkWell( +// onTap: () {_pickImageFromCamera();}, +// child: Column(children: [ +// Icon(Icons.camera_alt_outlined, size: 50,), +// Text('camera') +// ],),), +// ) +// ],), + +// ), +// ); +// }); +// } + +// Future _pickImageFromGallery() async { +// // final storageRef =await FirebaseStorage.instance +// // .ref().child('userphotos').child("postedimg1"); +// // await storageRef.putFile(selectedIMage!); +// // final imageUrl=await storageRef.getDownloadURL(); + +// final returnImage = await ImagePicker().pickImage( +// source: ImageSource.gallery); +// if (returnImage == null) return; +// setState(() { +// selectedIMage = File(returnImage.path); + +// _image = File(returnImage.path).readAsBytesSync(); +// }); +// } + +// Future _pickImageFromCamera() async { +// final returnImage = await ImagePicker().pickImage( +// source: ImageSource.camera); +// if (returnImage == null) return; +// setState(() { +// selectedIMage = File(returnImage.path); +// _image = File(returnImage.path).readAsBytesSync(); +// }); +// } +// } + + + + + + + + + + + + + + + + + + + + diff --git a/lib/pages/chat_page.dart b/lib/pages/chat_page.dart index 73db33e..7b22088 100644 --- a/lib/pages/chat_page.dart +++ b/lib/pages/chat_page.dart @@ -1,4 +1,4 @@ -import 'package:Learner/consts.dart'; +import 'package:Learner/pages/consts.dart'; import 'package:chat_gpt_sdk/chat_gpt_sdk.dart'; import 'package:dash_chat_2/dash_chat_2.dart'; import 'package:flutter/material.dart'; @@ -34,18 +34,18 @@ class _chatpageState extends State { title: Text( 'Chat GPT', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), ), body: DashChat( currentUser: _cuttentUser, typingUsers: _typingUsers, messageOptions: MessageOptions( - containerColor: Colors.black, currentUserContainerColor: const Color.fromARGB(255, 7, 7, 7), textColor: Colors.white), @@ -53,7 +53,6 @@ class _chatpageState extends State { getChatResponse(m); }, messages: _messages), - ); } diff --git a/lib/widgets/answercard.dart b/lib/widgets/answercard.dart index 86e30a3..f1f0e1e 100644 --- a/lib/widgets/answercard.dart +++ b/lib/widgets/answercard.dart @@ -35,7 +35,7 @@ class AnswerCard extends StatelessWidget { ? Colors.green : isWrongAnswer ? Colors.red - : Colors.white, + : Color.fromARGB(255, 211, 154, 154), ), ), child: Row( @@ -45,7 +45,7 @@ class AnswerCard extends StatelessWidget { question, style: const TextStyle( fontSize: 16, - color: Colors.white, + color: Color.fromARGB(255, 0, 0, 0), ), )), const SizedBox( @@ -63,10 +63,10 @@ class AnswerCard extends StatelessWidget { height: 70, padding: const EdgeInsets.all(16.0), decoration: BoxDecoration( - color: Colors.white24, + color: Color.fromARGB(255, 255, 246, 233), borderRadius: BorderRadius.circular(25), border: Border.all( - color: Colors.white, + color: Color.fromARGB(255, 211, 154, 154), ), ), child: Row( @@ -76,7 +76,7 @@ class AnswerCard extends StatelessWidget { question, style: const TextStyle( fontSize: 16, - color: Colors.white, + color: Color.fromARGB(255, 8, 8, 8), ), )), const SizedBox( diff --git a/lib/widgets/nextbutton.dart b/lib/widgets/nextbutton.dart index 60e2962..a04cd60 100644 --- a/lib/widgets/nextbutton.dart +++ b/lib/widgets/nextbutton.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; - class RectunglerButton extends StatelessWidget { +class RectunglerButton extends StatelessWidget { const RectunglerButton({ super.key, required this.lable, @@ -11,19 +11,26 @@ import 'package:flutter/material.dart'; final String lable; @override Widget build(BuildContext context) { - return - TextButton( - onPressed: onPressed, - child: SizedBox( - height: 50, - width: double.infinity, - child: Card( - color: onPressed != null ? Colors.orange.shade600 : Colors.orange.shade400, - child: Center( - child: Text(lable, - style: const TextStyle(letterSpacing: 2,fontSize: 25,fontWeight: FontWeight.w400,color: Colors.black),), + return TextButton( + onPressed: onPressed, + child: SizedBox( + height: 50, + width: double.infinity, + child: Card( + color: onPressed != null + ? Color.fromARGB(255, 255, 121, 0) + : Color.fromARGB(255, 255, 121, 0), + child: Center( + child: Text( + lable, + style: const TextStyle( + letterSpacing: 2, + fontSize: 25, + fontWeight: FontWeight.w400, + color: Colors.black), ), ), - )); + ), + )); } -} \ No newline at end of file +} diff --git a/lib/widgets/widgets.dart b/lib/widgets/widgets.dart index 009c6db..f23addb 100644 --- a/lib/widgets/widgets.dart +++ b/lib/widgets/widgets.dart @@ -1,9 +1,29 @@ import 'package:Learner/Screens/pickscreen.dart'; +import 'package:Learner/data/agriculturetest/agri.dart'; +import 'package:Learner/data/aiml/aimllist.dart'; import 'package:Learner/data/aptitude/aptitudelist.dart'; +import 'package:Learner/data/civil/civillist.dart'; +import 'package:Learner/data/cse/cselist.dart'; +import 'package:Learner/data/ece/ece.dart'; import 'package:Learner/data/electrical/electricalList.dart'; +import 'package:Learner/data/logical/logicallist.dart'; +import 'package:Learner/data/mechanical/mechanicallist.dart'; +import 'package:Learner/data/verbel/verbellist.dart'; +import 'package:Learner/studydata/aptitude/aptitudelist.dart'; +import 'package:Learner/studydata/verb/verblist.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_staggered_animations/flutter_staggered_animations.dart'; import 'package:simple_list_tile/simple_list_tile.dart'; +import '../studydata/Agriculture/Agriculturelist.dart'; +import '../studydata/aiml/ailist.dart'; +import '../studydata/civil/civillist.dart'; +import '../studydata/cse/cselist.dart'; +import '../studydata/ece/ecelist.dart'; +import '../studydata/electrical/electricallist.dart'; +import '../studydata/logic/logiclist.dart'; +import '../studydata/mechanical/mechanical.dart'; + class Aptitude extends StatefulWidget { @override State createState() => _AptitudeState(); @@ -79,74 +99,87 @@ class _AptitudeState extends State { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( 'Aptitude', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: apt[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: Color.fromARGB(0, 255, 247, 247), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: apt[i].a, + std: aptitude[0].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 227, 208, 160), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + )), + )); + }), + ), ), ); } @@ -235,74 +268,86 @@ class _ElectricalState extends State { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( 'Electrical', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: e[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: e[i].a, + std: electric[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -318,141 +363,151 @@ class Logical extends StatefulWidget { class _LogicalState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2622/2622118.png', + text: 'Blood Relation'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/833/833593.png', + text: 'Calendar'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2784/2784459.png', + text: 'Clocks'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6802/6802347.png', + text: 'Coded Inequalities'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3262/3262419.png', + text: 'Coding & Decoding'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', + text: 'Cubes & Dice'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/7527/7527186.png', + text: 'Input and Output'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/43/43585.png', + text: 'Letter and Number Analogy'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/164/164691.png', + text: 'Letter series'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2570/2570371.png', + text: 'Non-Verbal'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11517/11517103.png', + text: 'Number series'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2282/2282594.png', + text: 'Orderind & Ranking'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993686.png', + text: 'Puzzle'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4805/4805775.png', + text: 'Sequence & Alphabet'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3270/3270865.png', + text: 'data sufficient'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9926/9926931.png', + text: 'odd man out'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/919/919521.png', + text: 'seating arrangement'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1875/1875525.png', + text: 'statement and assumption'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9196/9196093.png', + text: 'statements course of action'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1408/1408005.png', + text: 'syllogisms'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Logical', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: apt[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: logic[i].a, + std: logical[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -467,67 +522,65 @@ class Verbal extends StatefulWidget { class _VerbalState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1464/1464749.png', + text: 'active and passive voice'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10828/10828783.png', + text: 'adjectives'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10828/10828783.png', + text: 'antonyms'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11693/11693377.png', + text: 'articals'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4158/4158665.png', + text: 'auxiliary verbs'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4158/4158665.png', + text: 'direct and indirect speech'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4000/4000496.png', + text: 'fill in the blanks'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9592/9592722.png', + text: 'homophones'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5687/5687792.png', + text: 'idiomatic expression'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2620/2620540.png', + text: 'joining sentence'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/309/309336.png', + text: 'one word substitutes'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1935/1935717.png', + text: 'prepositions'), tiles( imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + text: 'selection of words'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10074/10074047.png', + text: 'sentence correction'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2600/2600327.png', + text: 'spelling error'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3539/3539611.png', + text: 'spotting error'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2672/2672267.png', + text: 'subject verb agreement'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10371/10371226.png', + text: 'synonyms'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6749/6749514.png', + text: 'tenses'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/7440/7440452.png', + text: 'transformation of sentences'), ]; @override @@ -535,74 +588,86 @@ class _VerbalState extends State { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Verbal', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: apt[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: verbel[i].a, + std: verb[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -618,141 +683,151 @@ class Electronics extends StatefulWidget { class _ElectronicsState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8295/8295305.png', + text: 'Antenna Design'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2775/2775473.png', + text: 'Biomedical Signal Processing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8915/8915905.png', + text: 'Cognitive Radio Networks'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1688/1688404.png', + text: 'Digital Communication Systems'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1688/1688404.png', + text: 'Digital Image Processing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10620/10620954.png', + text: 'Digital Signal Processing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2735/2735969.png', + text: 'Embedded Systems'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11498/11498945.png', + text: 'Fiber-Optic Communication'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6080/6080697.png', + text: 'Internet of Things'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1547/1547889.png', + text: 'Microwave Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2092/2092757.png', + text: 'Network Security'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11256/11256300.png', + text: 'Neuromorphic Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/901/901163.png', + text: 'Optical Communication Systems'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3436/3436188.png', + text: 'Power Electronics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', + text: 'Renewable Energy Systems'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6667/6667604.png', + text: 'Robotics in Communication'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1042/1042820.png', + text: 'Satellite Communication'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11780/11780642.png', + text: 'VLSI Design'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2857/2857433.png', + text: 'Permutations & Combinations'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4105/4105220.png', + text: 'Wireless Communication'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Electronics Engineering', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: apt[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: ece[i].a, + std: ECE[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -768,141 +843,151 @@ class Civil extends StatefulWidget { class _CivilState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6968/6968867.png', + text: 'Building Information Modeling'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9257/9257340.png', + text: 'Coastal Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3002/3002238.png', + text: 'Construction Management'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/12029/12029512.png', + text: 'Construction Materials Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/12471/12471881.png', + text: 'Earth System Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3380/3380941.png', + text: 'Earth quake Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11498/11498206.png', + text: 'Environmental Engineering'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11098/11098518.png', + text: 'Hydraulics And Water Resources'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8838/8838206.png', + text: 'Material Science and Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4434/4434108.png', + text: 'Remote Sensing and GIS'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/7486/7486487.png', + text: 'Renewable Energy and Sustainable Design'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1991/1991471.png', + text: 'Risk and Reliability Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/781/781412.png', + text: 'Soil Mechanics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4270/4270905.png', + text: 'Structural Dynamics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3593/3593636.png', + text: 'surveying'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/887/887182.png', + text: 'Transportation Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/12476/12476484.png', + text: 'Tunnel Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8914/8914137.png', + text: 'Urban Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11823/11823551.png', + text: 'Water and Wastewater Treatment'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: "https://cdn-icons-png.flaticon.com/128/1958/1958738.png", + text: 'Structur Alanalysis'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Electrical Engineering', + 'Civil', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: apt[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: civil[i].a, + std: civ[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -918,141 +1003,154 @@ class Mechanical extends StatefulWidget { class _MechanicalState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2290/2290668.png', + text: 'Aerospace engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3577/3577867.png', + text: 'Automotive Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2724/2724410.png', + text: 'Bearings and Lubrication'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11071/11071608.png', + text: 'Biomechanics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3358/3358837.png', + text: 'computer-aided design'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2824/2824941.png', + text: 'Computational Mechanics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3715/3715180.png', + text: 'Control Systems'), tiles( imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + 'https://t4.ftcdn.net/jpg/01/02/13/51/240_F_102135102_SLiVBidL1EnP7YEJXW5rTeyZeoyOhSez.jpg', + text: 'Fluid Flow Analysis'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: + 'https://t3.ftcdn.net/jpg/03/29/73/40/240_F_329734072_MTgY7F7FLYSzogNqw1EhY7BaEV8HnQFz.jpg', + text: 'Fluid mechaniccs'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10593/10593577.png', + text: 'Fluid power systems'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3651/3651057.png', + text: 'Heat transfer'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8384/8384982.png', + text: 'Kinematics and Dynamics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/12747/12747271.png', + text: 'Machine Elements'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2162/2162415.png', + text: 'Machine design'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9708/9708956.png', + text: 'Manufacturing Processes'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4149/4149479.png', + text: 'Material science'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11498/11498968.png', + text: 'Mechanics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1693/1693746.png', + text: 'Mechatronics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: + 'https://t3.ftcdn.net/jpg/06/13/09/64/240_F_613096484_m7VI4Rp6adCRnSLJxvYVxRgbJM8lr60a.jpg', + text: 'Solid Mechanics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9089/9089002.png', + text: 'thermodaynamics'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Mechanical', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: e[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: mec[i].a, + std: MEC[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -1068,141 +1166,151 @@ class Agriculture extends StatefulWidget { class _AgricultureState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5341/5341375.png', + text: 'Agricultural Information Systems'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6037/6037751.png', + text: 'Aquacultural Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2286/2286227.png', + text: 'Bioenergy and Biofuels'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5784/5784258.png', + text: 'Biotechnology in Agriculture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4496/4496256.png', + text: 'Crop Modeling and Simulation'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4729/4729482.png', + text: 'Environmental Impact Assessment in Agriculture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11279/11279611.png', + text: 'Farm Automation and Robotics'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5863/5863745.png', + text: 'Farm Machinery and Equipmen'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4490/4490955.png', + text: 'Farm Structures and Buildings'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11504/11504620.png', + text: 'Farm Water Management'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4258/4258648.png', + text: 'Food Engineering'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4212/4212747.png', + text: 'Greenhouse Technology'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5313/5313695.png', + text: 'Irrigation Systems'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5313/5313695.png', + text: 'Mechatronics in Agriculture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6291/6291325.png', + text: 'Post-Harvest Technology'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4266/4266204.png', + text: 'Precision Agriculture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1072/1072372.png', + text: 'Remote Sensing in Agriculture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2591/2591974.png', + text: 'Soil and Water Conservation'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10972/10972574.png', + text: 'Sustainable Agriculture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10972/10972574.png', + text: 'Waste Management in Agriculture'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Agriculture', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: apt[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: arig[i].a, + std: agri[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -1218,141 +1326,152 @@ class Computer extends StatefulWidget { class _ComputerState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/887/887739.png', + text: 'Blockchain'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3665/3665923.png', + text: 'C Language'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2316/2316109.png', + text: 'Cloud Computing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2821/2821720.png', + text: 'Computer Architecture'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/12563/12563706.png', + text: 'Computer Ethics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3940/3940056.png', + text: 'Computer Graphics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3044/3044120.png', + text: 'Computer Science'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/3219/3219830.png', + text: 'Compurter Vision'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1163/1163468.png', + text: 'Cryptography'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4744/4744315.png', + text: 'Cyber Security'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5865/5865919.png', + text: 'Data Science'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/294/294968.png', + text: 'Data Analytics'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5687/5687273.png', + text: 'Devops'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/10961/10961349.png', + text: 'Ethical Hacking'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11296/11296650.png', + text: 'Human Computer Interaction'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/6080/6080697.png', + text: 'Internet Of Things'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5608/5608615.png', + text: 'Mobile App Development'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9423/9423141.png', + text: 'Quantum Computing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2103/2103665.png', + text: 'R-Programming'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8304/8304443.png', + text: 'C++'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Computer Science', style: TextStyle( + color: Colors.black, fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, fontSize: 23), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: e[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: cse[i].a, + std: CSE[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: + const Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } @@ -1368,141 +1487,152 @@ class Artifical extends StatefulWidget { class _ArtificalState extends State { List t = [ tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2041/2041643.png', - text: 'Statistics'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1693/1693746.png', + text: 'AI Ethics and Fairness'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/993/993872.png', - text: 'Ratio & Propotion'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11188/11188796.png', + text: 'AI in Robotics and Automation'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7293/7293371.png', - text: 'Logarithms'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4616/4616734.png', + text: 'AutoML'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/8675/8675429.png', - text: 'Profit & Loss'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1239/1239719.png', + text: 'Bayesian Networks'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5405/5405969.png', - text: 'Averages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2103/2103633.png', + text: 'Clustering Algorithms'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3742/3742713.png', - text: 'Simple Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2103/2103633.png', + text: 'Cognitive Computing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/850/850960.png', - text: 'Time & Distance'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/1042/1042009.png', + text: 'Decision Trees'), tiles( - imgpath: - 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQiYePLPiFXyaR9yvNuZpwzJjGgxCMIEAL2ig&usqp=CAU', - text: 'Lcm & Hcf'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8637/8637101.png', + text: 'Deep Learning'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4090/4090217.png', - text: 'Compound Interest'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/4349/4349297.png', + text: 'Genetic Algorithms'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/3696/3696440.png', - text: 'Number System'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9423/9423110.png', + text: 'Image processing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/5074/5074128.png', - text: 'Problems On Ages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9831/9831326.png', + text: 'Natural Language Processing'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9677/9677576.png', - text: 'Mixtures And Alligations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/724/724979.png', + text: 'Random Forests'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/726/726476.png', - text: 'Percentages'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/8301/8301247.png', + text: 'Recommender Systems'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/1006/1006555.png', - text: 'Partnership'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9304/9304481.png', + text: 'Reinforcement Learning'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/9823/9823926.png', - text: 'Data Interpretation'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2604/2604418.png', + text: 'Speech Recognition'), tiles( - imgpath: - 'https://t3.ftcdn.net/jpg/03/84/27/68/240_F_384276829_zPFmi9iVIt5dyTBL2SuJ4gqMxZkUV9dL.jpg', - text: 'Permutations & Combinations'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9193/9193083.png', + text: 'Supervised Learning'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/2480/2480809.png', - text: 'Probability'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/9240/9240330.png', + text: 'Support Vector Machines'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/748/748622.png', - text: 'Mensuration-1'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/2574/2574564.png', + text: 'Time Series Analysis'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/4229/4229093.png', - text: 'Mensuration-2'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/5712/5712448.png', + text: 'Transfer Learning'), tiles( - imgpath: 'https://cdn-icons-png.flaticon.com/128/7339/7339321.png', - text: 'Time & Work'), + imgpath: 'https://cdn-icons-png.flaticon.com/128/11751/11751735.png', + text: 'Unsupervised Learning'), ]; @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 255, 255), appBar: AppBar( title: Text( - 'Aptitude', + 'Artifical Intilligence', style: TextStyle( fontStyle: FontStyle.italic, fontWeight: FontWeight.bold, - fontSize: 23), + fontSize: 23, + color: Colors.black), ), centerTitle: true, - backgroundColor: Colors.black, + backgroundColor: Color.fromARGB(255, 255, 121, 0), leading: GestureDetector( onTap: () { Navigator.pop(context); }, child: Icon(Icons.arrow_back_ios)), ), - body: ListView.builder( - itemCount: t.length, - itemBuilder: (BuildContext context, i) { - return Card( - color: const Color.fromARGB(0, 0, 0, 0), - child: SimpleListTile( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => pickscreen( - lis: e[i].a, - ))); - }, - title: Text( - t[i].text, - style: TextStyle( - color: Color.fromARGB(255, 40, 39, 39), - fontWeight: FontWeight.bold, - fontSize: 20, - ), - ), - trailing: const Icon( - Icons.arrow_forward_ios, - color: Color.fromARGB(255, 143, 141, 142), - ), - leading: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image( - width: 30, - height: 30, - image: NetworkImage( - t[i].imgpath, - ), - ) - ], - ), - borderRadius: BorderRadius.circular(20), - tileColor: const Color.fromARGB(255, 242, 240, 240), - circleColor: const Color.fromARGB(255, 226, 206, 205), - circleDiameter: 60, - gradient: const LinearGradient( - colors: [ - Color.fromARGB(255, 249, 248, 250), - Color.fromARGB(255, 251, 251, 252) - ], - ), - ), - ); - }), + body: AnimationLimiter( + child: ListView.builder( + itemCount: t.length, + itemBuilder: (BuildContext context, i) { + return AnimationConfiguration.staggeredList( + position: i, + duration: Duration(milliseconds: 600), + child: SlideAnimation( + verticalOffset: 50, + child: FadeInAnimation( + child: Card( + elevation: 0, + color: const Color.fromARGB(0, 0, 0, 0), + child: SimpleListTile( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => pickscreen( + lis: aiml[i].a, + std: AIML[i].l, + ab: t[i].text, + ))); + }, + title: Text( + t[i].text, + style: TextStyle( + color: Color.fromARGB(255, 40, 39, 39), + fontWeight: FontWeight.bold, + fontSize: 20, + ), + ), + trailing: const Icon( + Icons.arrow_forward_ios, + color: Color.fromARGB(255, 143, 141, 142), + ), + leading: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image( + width: 30, + height: 30, + image: NetworkImage( + t[i].imgpath, + ), + ) + ], + ), + borderRadius: BorderRadius.circular(20), + tileColor: const Color.fromARGB(255, 242, 240, 240), + circleColor: + const Color.fromARGB(255, 255, 170, 96), + circleDiameter: 60, + gradient: const LinearGradient( + colors: [ + Color.fromARGB(255, 255, 220, 190), + Color.fromARGB(255, 255, 232, 212), + ], + ), + ), + )))); + }), + ), ), ); } diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc index f6f23bf..7299b5c 100644 --- a/linux/flutter/generated_plugin_registrant.cc +++ b/linux/flutter/generated_plugin_registrant.cc @@ -6,9 +6,13 @@ #include "generated_plugin_registrant.h" +#include #include void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) file_selector_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin"); + file_selector_plugin_register_with_registrar(file_selector_linux_registrar); g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin"); url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar); diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake index f16b4c3..786ff5c 100644 --- a/linux/flutter/generated_plugins.cmake +++ b/linux/flutter/generated_plugins.cmake @@ -3,6 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST + file_selector_linux url_launcher_linux ) diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index d24127f..145d8ae 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -5,11 +5,17 @@ import FlutterMacOS import Foundation +import file_selector_macos +import firebase_auth +import firebase_core import path_provider_foundation import sqflite import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) + FLTFirebaseAuthPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseAuthPlugin")) + FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin")) UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) diff --git a/pubspec.lock b/pubspec.lock index 2e5da0e..e9a3a75 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,6 +1,14 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + _flutterfire_internals: + dependency: transitive + description: + name: _flutterfire_internals + sha256: "8942974ee5dc932427704ede5e0db8b5f2b8f22172964544b56e6bd37f6c3634" + url: "https://pub.dev" + source: hosted + version: "1.3.12" animated_text_kit: dependency: "direct main" description: @@ -129,6 +137,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.1.1" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: "445db18de832dba8d851e287aff8ccf169bed30d2e94243cb54c7d2f1ed2142c" + url: "https://pub.dev" + source: hosted + version: "0.3.3+6" crypto: dependency: transitive description: @@ -201,6 +217,94 @@ packages: url: "https://pub.dev" source: hosted version: "7.0.0" + file_selector_linux: + dependency: transitive + description: + name: file_selector_linux + sha256: "045d372bf19b02aeb69cacf8b4009555fb5f6f0b7ad8016e5f46dd1387ddd492" + url: "https://pub.dev" + source: hosted + version: "0.9.2+1" + file_selector_macos: + dependency: transitive + description: + name: file_selector_macos + sha256: b15c3da8bd4908b9918111fa486903f5808e388b8d1c559949f584725a6594d6 + url: "https://pub.dev" + source: hosted + version: "0.9.3+3" + file_selector_platform_interface: + dependency: transitive + description: + name: file_selector_platform_interface + sha256: "0aa47a725c346825a2bd396343ce63ac00bda6eff2fbc43eabe99737dede8262" + url: "https://pub.dev" + source: hosted + version: "2.6.1" + file_selector_windows: + dependency: transitive + description: + name: file_selector_windows + sha256: d3547240c20cabf205c7c7f01a50ecdbc413755814d6677f3cb366f04abcead0 + url: "https://pub.dev" + source: hosted + version: "0.9.3+1" + firebase_auth: + dependency: "direct main" + description: + name: firebase_auth + sha256: af5a03a0c377af9218c9aa3c6a9ef5207d9621f0f6cd3b5099a5f570e1a03206 + url: "https://pub.dev" + source: hosted + version: "4.13.0" + firebase_auth_platform_interface: + dependency: transitive + description: + name: firebase_auth_platform_interface + sha256: def138b34bb97310ff748d1864f3ccd5b49d7424f35825f0df5455f16218ba99 + url: "https://pub.dev" + source: hosted + version: "7.0.4" + firebase_auth_web: + dependency: transitive + description: + name: firebase_auth_web + sha256: e5fbb3453fbfff0dd8dfed5e3560248391f76a4c59ae9b331704e3443cffde77 + url: "https://pub.dev" + source: hosted + version: "5.8.7" + firebase_core: + dependency: "direct main" + description: + name: firebase_core + sha256: "45f3f9babfc6f56fb94c3cd11584cf3c9672868228373b699b94427010e01dc3" + url: "https://pub.dev" + source: hosted + version: "2.22.0" + firebase_core_platform_interface: + dependency: transitive + description: + name: firebase_core_platform_interface + sha256: c437ae5d17e6b5cc7981cf6fd458a5db4d12979905f9aafd1fea930428a9fe63 + url: "https://pub.dev" + source: hosted + version: "5.0.0" + firebase_core_web: + dependency: transitive + description: + name: firebase_core_web + sha256: "0631a2ec971dbc540275e2fa00c3a8a2676f0a7adbc3c197d6fba569db689d97" + url: "https://pub.dev" + source: hosted + version: "2.8.1" + floating_snackbar: + dependency: "direct main" + description: + name: floating_snackbar + sha256: d3e860f21d6e77e4c2427e62226124957abff7ea4cbccd08f61343c9931342da + url: "https://pub.dev" + source: hosted + version: "1.0.3+1" flutter: dependency: "direct main" description: flutter @@ -246,6 +350,22 @@ packages: url: "https://pub.dev" source: hosted version: "2.2.1" + flutter_plugin_android_lifecycle: + dependency: transitive + description: + name: flutter_plugin_android_lifecycle + sha256: b068ffc46f82a55844acfa4fdbb61fad72fa2aef0905548419d97f0f95c456da + url: "https://pub.dev" + source: hosted + version: "2.0.17" + flutter_staggered_animations: + dependency: "direct main" + description: + name: flutter_staggered_animations + sha256: "81d3c816c9bb0dca9e8a5d5454610e21ffb068aedb2bde49d2f8d04f75538351" + url: "https://pub.dev" + source: hosted + version: "1.1.1" flutter_test: dependency: "direct dev" description: flutter @@ -296,6 +416,70 @@ packages: url: "https://pub.dev" source: hosted version: "4.1.3" + image_picker: + dependency: "direct main" + description: + name: image_picker + sha256: "7d7f2768df2a8b0a3cefa5ef4f84636121987d403130e70b17ef7e2cf650ba84" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + image_picker_android: + dependency: transitive + description: + name: image_picker_android + sha256: d6a6e78821086b0b737009b09363018309bbc6de3fd88cc5c26bc2bb44a4957f + url: "https://pub.dev" + source: hosted + version: "0.8.8+2" + image_picker_for_web: + dependency: transitive + description: + name: image_picker_for_web + sha256: "50bc9ae6a77eea3a8b11af5eb6c661eeb858fdd2f734c2a4fd17086922347ef7" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + image_picker_ios: + dependency: transitive + description: + name: image_picker_ios + sha256: "76ec722aeea419d03aa915c2c96bf5b47214b053899088c9abb4086ceecf97a7" + url: "https://pub.dev" + source: hosted + version: "0.8.8+4" + image_picker_linux: + dependency: transitive + description: + name: image_picker_linux + sha256: "4ed1d9bb36f7cd60aa6e6cd479779cc56a4cb4e4de8f49d487b1aaad831300fa" + url: "https://pub.dev" + source: hosted + version: "0.2.1+1" + image_picker_macos: + dependency: transitive + description: + name: image_picker_macos + sha256: "3f5ad1e8112a9a6111c46d0b57a7be2286a9a07fc6e1976fdf5be2bd31d4ff62" + url: "https://pub.dev" + source: hosted + version: "0.2.1+1" + image_picker_platform_interface: + dependency: transitive + description: + name: image_picker_platform_interface + sha256: ed9b00e63977c93b0d2d2b343685bed9c324534ba5abafbb3dfbd6a780b1b514 + url: "https://pub.dev" + source: hosted + version: "2.9.1" + image_picker_windows: + dependency: transitive + description: + name: image_picker_windows + sha256: "6ad07afc4eb1bc25f3a01084d28520496c4a3bb0cb13685435838167c9dcedeb" + url: "https://pub.dev" + source: hosted + version: "0.2.1+1" intl: dependency: transitive description: @@ -360,6 +544,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.9.1" + mime: + dependency: transitive + description: + name: mime + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e + url: "https://pub.dev" + source: hosted + version: "1.0.4" octo_image: dependency: transitive description: @@ -485,6 +677,14 @@ packages: description: flutter source: sdk version: "0.0.99" + solid_bottom_sheet: + dependency: "direct main" + description: + name: solid_bottom_sheet + sha256: "7a18ee17da1c57fdad953f785be4cbdaf5e1116650888162ceaccb80e6b6a6aa" + url: "https://pub.dev" + source: hosted + version: "0.1.10" source_span: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 6991615..a0c9225 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -44,9 +44,15 @@ dependencies: lottie: animated_text_kit: ^4.2.2 page_route_animator: ^1.0.3 - animation_list: ^2.2.1 - gradient_borders: ^1.0.0 + animation_list: ^2.2.1 flutter_custom_clippers: ^2.1.0 + firebase_core: ^2.22.0 + firebase_auth: + flutter_staggered_animations: ^1.1.1 + solid_bottom_sheet: + gradient_borders: ^1.0.0 + floating_snackbar: ^1.0.3+1 + image_picker: ^1.0.4 dev_dependencies: flutter_test: diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index 4f78848..3a3369d 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -6,9 +6,18 @@ #include "generated_plugin_registrant.h" +#include +#include +#include #include void RegisterPlugins(flutter::PluginRegistry* registry) { + FileSelectorWindowsRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FileSelectorWindows")); + FirebaseAuthPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FirebaseAuthPluginCApi")); + FirebaseCorePluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FirebaseCorePluginCApi")); UrlLauncherWindowsRegisterWithRegistrar( registry->GetRegistrarForPlugin("UrlLauncherWindows")); } diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 88b22e5..b9b24c8 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -3,6 +3,9 @@ # list(APPEND FLUTTER_PLUGIN_LIST + file_selector_windows + firebase_auth + firebase_core url_launcher_windows )