diff --git a/android/app/build.gradle b/android/app/build.gradle index 3ab05d7..5b0e308 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -38,7 +38,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "shivam.com.udaan2020" + applicationId "com.bvm.udaan2020" minSdkVersion 16 targetSdkVersion 28 versionCode flutterVersionCode.toInteger() diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml index 98c4961..5b0d1b9 100644 --- a/android/app/src/debug/AndroidManifest.xml +++ b/android/app/src/debug/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="com.bvm.udaan2020"> diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index be0d7a3..4b0108a 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="com.bvm.udaan2020"> + package="com.bvm.udaan2020"> diff --git a/android/settings_aar.gradle b/android/settings_aar.gradle new file mode 100644 index 0000000..e7b4def --- /dev/null +++ b/android/settings_aar.gradle @@ -0,0 +1 @@ +include ':app' diff --git a/assets/data.json b/assets/data.json index 4876ce8..8bb802e 100644 --- a/assets/data.json +++ b/assets/data.json @@ -1,375 +1,1253 @@ { "tech": { - "ce": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, - "entryFee": 50, - "eventName": "Electro Musiciano", + "ce": [ + { + "id": "C1", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Survey it!", + "managers": [ + { + "name": "Parigna Kathiriya", + "phone": "9664731858" + }, + { + "name": "Praharsh Patel", + "phone": "9558746785" + }, + { + "name": "Dilan Gohil", + "phone": "9714705618" + } + ], + "rounds": [ + "Pen paper based quiz. Basic Civil and Surveying related questions will be asked.", + "Treasure Hunt. Clues will be solved by operating various surveying instruments, surveying problems and coordinates. They will have to use Surveying Instruments like Theodolite/chain to solve to clues." + ], + "tagline": "“Investigate the area”", + "teamSize": 2, + "outcome": "Participants will use their knowledge of surveying and will also practically use various surveying instruments" + }, + { + "id": "CE2", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "Seismism", + "managers": [ + { + "name": "Ashutosh Upadhyay", + "phone": "8758638603" + }, + { + "name": "Burhan Godhrawala", + "phone": "8511525348" + }, + { + "name": "Tushar Thakkar", + "phone": "9492672842" + } + ], + "rounds": [ + "Earthquake resistant building model making by using candy sticks, cardboard, thermocol . Dimensions will be provided on the spot. Stability will be checked by placing it on shaking table." + ], + "tagline": "“Build the safest place to be during an earthquake”", + "teamSize": 3, + "outcome": "Learning principle for designing earthquake resistant structure" + }, + { + "id": "CE3", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Estate Broker", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Abdulkadir Kharodawala", + "phone": "9428904647" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Sagar Sawant", + "phone": "9099160531" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Niyati Korat", + "phone": "9408073975" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "Theoretical quiz on basic civil engineering.", + "Participants will be given a fixed floor space and they have to design a complete furnished house ready for sale, including arrangement of optimum number of rooms, complete with furniture & fittings at the actual market price known from internet or any other sources, on an A3 size sheet within given time. They have to download the necessary images of the used furniture on phones.", + "Decide the final price of the apartment including your profit and convince the jury to buy your particular apartment (Bargaining is allowed)." ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“Go commercial”", "teamSize": 2, - "objective": null - }], + "outcome": "Connecting civil engineering students to the commercial world." + } + ], "cpit": [ { - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, + "id": "CP1", + "participants": [], + "prizeMoney": 0, "entryFee": 50, - "eventName": "Electro Musiciano", + "eventName": "Code-2-Duo", + "managers": [ + { + "name": "Parv Desai", + "phone": "9426934025" + }, + { + "name": "Dhruvil Kotecha", + "phone": "7228020768" + } + ], + "rounds": [ + "Pen & paper test.", + "Code completion and debugging.", + "Relay Coding Competition where one of the group member will be allotted half of the stipulated time to code while other will take over and code for the remaining time" + ], + "tagline": "“Eat. Sleep. Code. Repeat.”", + "teamSize": 2, + "outcome": "Participants will be able to solve coding problems on different platforms more efficiently." + }, + { + "id": "CP2", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Scratch to Evolve!", + "managers": [ + { + "name": "Dhruvi Lad", + "phone": "9426128596" + }, + { + "name": "Leenanci Parmar", + "phone": "8238560405" + } + ], + "rounds": [ + "MSW Logo basic design", + "Basic game animations with Scratch", + "Basic game based on any programming language" + ], + "tagline": "“0000000 to 1100100”", + "teamSize": 1, + "outcome": "It is a theme based event in which the participants will get to know the retro game developing with MSW Logo to the metro game developing with Programming languages" + }, + { + "id": "CP3", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Localhost:8080", + "managers": [ + { + "name": "Sakshi Tickoo", + "phone": "9998539146" + }, + { + "name": "Nishit Jariwala", + "phone": "8140557205" + } + ], + "rounds": [ + "Pen & Paper Test", + "Static UI design", + "Mini website with basic functionality" + ], + "tagline": "“Personal Home Page to PHP:Hypertext Preprocessor”", + "teamSize": 1, + "outcome": "Participants will be able to understand fundamentals of web technologies" + }, + { + "id": "CP4", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "HardiUNO", + "managers": [ + { + "name": "Parth Patel", + "phone": "7567452930" + }, + { + "name": "Bhakti Thaker", + "phone": "9106385353" + }, + { + "name": "Priyal Patel", + "phone": "9409402178" + } + ], + "rounds": [ + "Crossword based on computer hardware", + "Quiz on hardware components", + "Small system implementation" + ], + "tagline": "“Every Digital output has an Analog alternative!”", + "teamSize": 2, + "outcome": "Participants will come to know basics of Arduino and MIT App inventor" + }, + { + "id": "CP5", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "Capture the flag", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Lav Hinsu", + "phone": "6353348131" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Jainil Panchal", + "phone": "9409465317" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Priyanshi Patel", + "phone": "9726310721" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "SQL Injection", + "Penetrate the system and collect flag in minimum time", + "Small system implementation" ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“When in doubt, use Brute Force”", "teamSize": 2, - "objective": null + "outcome": "Participants will come to know basics of ethical hacking" } ], - "mepr": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, - "entryFee": 50, - "eventName": "Electro Musiciano", + "mepr": [ + { + "id": "ME1", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "CONTRA_BID", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Jenish Shah", + "phone": "85111 74224" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Mohit Maheshwari", + "phone": "9558169536" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Jay Desai", + "phone": "9601943255" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "PEN PAPER TEST.\nBased on basic mechanical", + "BIDING.\nAuction of various mechanical part with virtual money (virtual money based on their 1st round marks)", + "MAKE A CONTRAPTION" + ], + "tagline": "“BE CRAZY”", + "teamSize": 1, + "outcome": "Innovative thinking in mechanism" + }, + { + "id": "ME2", + "participants": [], + "prizeMoney": 0, + "entryFee": 40, + "eventName": "CREZA", + "managers": [ + { + "name": "Hiral Chaudhari", + "phone": "9408766622" + }, + { + "name": "Yash Savaliya", + "phone": "9664523975" + } ], - "tagline": "“Driven by the Power of sound”", + "rounds": [ + "Workshop on CREO software\nThen we provide a one 3D object to participate and with help of that draw a front view, side view, top view of that(orthographic)", + "They create a 3D model on Creo, from their 1st round drawing sheet", + "We provide a different part on their computer and they ASSEMBLE that part and create model" + ], + "tagline": "“EVOLUTION WITH YOUR CREATIVENESS”", "teamSize": 2, - "objective": null - }], - "ecel": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, - "entryFee": 50, - "eventName": "Electro Musiciano", + "outcome": "Understanding of Drawing and Software" + }, + { + "id": "ME3", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "FLUIDZY", + "managers": [ + { + "name": "Maulik Maniya", + "phone": "8866638408" + }, + { + "name": "Darshan kava", + "phone": "8733941790" + }, + { + "name": "Armish Kathiya", + "phone": "9773221435" + }, + { + "name": "Abhishek Singala", + "phone": "7433814739" + } + ], + "rounds": [ + "WORKSHOP ON HYDROLIC ROBOT\nEvery team make a robot from given material", + "Various test of robot (pick up and drop)" + ], + "tagline": "“REVOLVE THE WORLD WITH FLUID”", + "teamSize": 3, + "outcome": "Understand the concept of hydraulic fluid" + }, + { + "id": "ME4", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "IGNOHUNT", + "managers": [ + { + "name": "Rahul Singh", + "phone": "8000110258" + }, + { + "name": "Dhruvraj Gohil", + "phone": "9773153631" + }, + { + "name": "Divas Baranawal", + "phone": "9426074156" + } + ], + "rounds": [ + "PPT – TEST\nQuestion (option based; picture / video based) based on basic 12th & Automobile (IC engine)", + "TRESUREHUNT\nAt the end of every clue they get one mechanical drive", + "With help of that drive they assemble and dissemble the IC ENGINE" + ], + "tagline": "“IGNITE THE SPARK”", + "teamSize": 3, + "outcome": "Understanding of IC engine" + }, + { + "id": "ME5", + "participants": [], + "prizeMoney": 0, + "entryFee": 40, + "eventName": "LATHE HEROES", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Gautam Poshiya", + "phone": "9106875731" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Dev Patel", + "phone": "7698803182" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Anshuman Upadhyay", + "phone": "9726351819" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "PAN- PAPER TEST\nBased on basic mechanical & lathe machine", + "Create a sequence of operation in reverse order", + "Practical on lathe machine" ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“Let’s play with machine”", "teamSize": 2, - "objective": null - }], - "ee": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, + "outcome": "Understanding of production technology" + } + ], + "ecel": [ + { + "id": "EC1", + "participants": [], + "prizeMoney": 0, "entryFee": 50, - "eventName": "Electro Musiciano", + "eventName": "Capture the flag", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Aayush Prajapati", + "phone": "919099812436" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Virag Patel", + "phone": "7405208946" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Utsav Pandya", + "phone": "7874552785" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "Kahoot Based MCQ Quiz on Fundamentals of Embedded Systems", + "Error Solving in the given code for Arduino and successful compilation for predicted output", + "Problem Statements will be given to the finalists wherein code from scratch is to be developed and implement on Tinkercad Simulation tool" ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“There is a solution to every problem”", "teamSize": 2, - "objective": null - }] - }, - "non-tech": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, + "outcome": "Get a better idea on interfacing peripherals with Arduino" + }, + { + "id": "EC2", + "participants": [], + "prizeMoney": 0, "entryFee": 50, - "eventName": "Electro Musiciano", + "eventName": "Electronics Premiere League", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Vatsa", + "phone": "8511154069" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Aziz", + "phone": "9165316398" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Viraj Jogani", + "phone": "7622870758" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "Pen-Paper Quiz and Identification of Intermediate Circuits based on Fundamentals of Electronics and Communication", + "Identify individual components on motherboards of various circuits (Time Based), virtual coins based on components identified", + "Auction of components with the virtual coins earned in 2nd round. Using those components, they will have to build complex circuits given. More the money, more the components, more the circuit complex hence more the probability to win" ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“Claim your bid”", "teamSize": 2, - "objective": null - }], - "workshop": [], - "cultural": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, + "outcome": "Participants will use their fundamental knowledge on Electronics Components which in turn will sharpen up upon implementation" + }, + { + "id": "EC3", + "participants": [], + "prizeMoney": 0, "entryFee": 50, - "eventName": "Electro Musiciano", + "eventName": "Boolean Kranti", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Neol", + "phone": "7487002467" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Kashyap", + "phone": "7567793355" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Vrusti", + "phone": "9409260133" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "Kahoot Based MCQ Quiz on Fundamentals of Digital Logic Design", + "Implement the solution of given problem statements on Xilinx Simulation Software", + "Applying the concepts of De-Morgan’s Law and K-map for the reduction of complex Boolean algebra equation and implement it with hardware, with actual results and Truth Table" ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“Aage vahi jayega jo shunya se ek ho payega”", "teamSize": 2, - "objective": null - }], - "star": [{ - "id": "5c6ab005a034092f8c482eda", - "participants": [ - "6354794383", - "8866258959", - "9275953988", - "9512643337", - "9409084029", - "8128111696", - "9265299517", - "9067924224", - "9825778986", - "9979709576", - "8238853299", - "7048649897", - "8860384483", - "9638779502", - "8128694263", - "8200985424" - ], - "prizeMoney": 20, - "entryFee": 50, - "eventName": "Electro Musiciano", + "outcome": "Participants will learn thee software Vivado and will be able to implement basic logic gate circuits" + }, + { + "id": "EC4", + "participants": [], + "prizeMoney": 0, + "entryFee": 70, + "eventName": "Ideation Conclave", "managers": [ { - "name": "Neel Patel", - "phone": "9712570166" + "name": "Meha Dave", + "phone": "7487002467" }, { - "name": "Vaibhav Yagneshwar", - "phone": "7383645136" + "name": "Dhwani", + "phone": "7567793355" + } + ], + "rounds": [ + "Call for Projects (1 week prior to Udaan). Submission of Project details in PDF format with few pictures and video of working projects.\nNote: Project Theme based on EC/EL topics like home automation, electronics in medical etc", + "Selected Groups will have to present their project in expo and explain it through a PPT Presentation.\nNote: Selected Students post R1 will be sent notification of selection and guidance of making the PPT." + ], + "tagline": "“Showcase your best ideas”", + "teamSize": 3, + "outcome": "Participants get to display their projects and get necessary guidance their projects and insights of presentation in project expo" + }, + { + "id": "EC5", + "participants": [], + "prizeMoney": 0, + "entryFee": 60, + "eventName": "EYE-conic Matrix", + "managers": [ + { + "name": "Neel", + "phone": "8141487950" }, { - "name": "Harsh Patel", - "phone": "8758128258" + "name": "Rishab", + "phone": "9687149962" } ], "rounds": [ - "Expert lecture on 555 timer, electronic components used, frequency equations, scaling based on Octaves and making connections on breadboard to make musical instrument and Quiz will be conducted based on information gathered from expert lecture.", - "Selected teams will be provided with necessary electronic components required to make a musical instrument along with which buzzer based quiz regarding participants technical knowledge will be conducted. ", - "Prepare a business plan presentation to sell your musical instrument to the investors. This round will test participants marketing, convincing, entrepreneurial skills. " + "Introductory session of Image Processing and hands on certain applications of image processing in MATLAB, participants will be given an input image and output image, they have to code in such a way that they obtain the best outcome", + "Surprise Round" ], - "tagline": "“Driven by the Power of sound”", + "tagline": "“Be clearer, Be sharper”", "teamSize": 2, - "objective": null - }] -} + "outcome": "Participants get to know about the basics of image processing and implementation of various applications of DIP in MATLAB/Python3" + } + ], + "ee": [ + { + "id": "EE1", + "participants": [], + "prizeMoney": 0, + "entryFee": 40, + "eventName": "The Secret Saviour", + "managers": [ + { + "name": "Anurag Abhyankar", + "phone": "9408150010" + }, + { + "name": "Maharshi Shah", + "phone": "7575016776" + } + ], + "rounds": [ + "Crossword based on fundamentals of Electrical Engineering", + "Technical Treasure Hunt", + "Defusing a Bomb found at the end of Round 2" + ], + "tagline": "“Faded Concepts leads to eruption”", + "teamSize": 1, + "outcome": "Participants will have better understanding of concepts of Electrical Engineering and they also will be able to use those concepts in the Treasure Hunt Round" + }, + { + "id": "EE2", + "participants": [], + "prizeMoney": 0, + "entryFee": 40, + "eventName": "जंग-ए-परिपथ", + "managers": [ + { + "name": "Dhruvanshu Parekh", + "phone": "7984109737" + }, + { + "name": "Mohit Devpura", + "phone": "8320449883" + } + ], + "rounds": [ + "Picture Perception Quiz based on electrical apparatus and hardware", + "Circuit debugging of Faulty Circuits and troubleshooting of the same", + "Participants will be given virtual money and with the use of virtual money, they will have to buy components to design a circuit of their choice" + ], + "tagline": "“A realistic look at Practicality”", + "teamSize": 2, + "outcome": "Exposure to Hardware of Electrical Engineering" + }, + { + "id": "EE3", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "All About Proteus", + "managers": [ + { + "name": "Sagar Mangukiya", + "phone": "9104051210" + }, + { + "name": "Rohit Kukadiy", + "phone": "8264849932" + } + ], + "rounds": [ + "Expert Talk on Proteus Software. Quiz on the outcome of the Proteus expert talk", + "Participants will be allotted different slots, each slot will have a unique physical circuit.Participants will have to draw a circuit diagram of the given circuit and then they will have to simulate the same on Proteus", + "Each participant will be given a simulated circuit on Proteus which will be full of errors. The participants will have to debug the circuit and will have to bring a specific output on Proteus" + ], + "tagline": "“Software on your side”", + "teamSize": 1, + "outcome": "The participants will learn about the Proteus software which is useful in development in Electrical Engineering field" + } + ] + }, + "non-tech": [ + { + "id": "NT1", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Dharma-e-Kshetra", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Quiz based on Mythological & Historical Events", + "Extempore (Hindi & Gujarati) on any random allotted character", + "Participant has to adopt specific character and appear for personality contest" + ], + "tagline": "“धर्मस्य मूलमर्थ”", + "teamSize": 1, + "outcome": "Enhanced exposure on mythology and public speaking" + }, + { + "id": "NT2", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Dharma-e-Kshetra", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Riddle based on Memes", + "Meme-Charades", + "Story Creation / Standup using memes (Surprize Round)" + ], + "tagline": "“Meme hi Zindagi hai”", + "teamSize": 1, + "outcome": "Meme-Review" + }, + { + "id": "NT3", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Series-e-Majic", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Quiz Based on Series\nFriends , Suits, BigBang , GoT , Breakingbad", + "Particular Scene will , participants has to write the script as per choice of series", + "Scene-e- magic of the round2 Script" + ], + "tagline": "“Netflix & Theatrix”", + "teamSize": 3, + "outcome": "Exposure to script" + }, + { + "id": "NT4", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "BVM Moot Court", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Participants will be given a specific Case and they have to defend the case with legal base. Necessary guidance will be provided" + ], + "tagline": "“Baap ki adalat”", + "teamSize": 2, + "outcome": "Legal Aspects of Society" + }, + { + "id": "NT5", + "participants": [], + "prizeMoney": 0, + "entryFee": 10, + "eventName": "Foyer Samvad", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "On Spot Debate on recent Issues" + ], + "tagline": "“BVM wants to know!”", + "teamSize": 1, + "outcome": "Enhanced exposure on mythology and public speaking" + }, + { + "id": "NT6", + "participants": [], + "prizeMoney": 0, + "entryFee": 50, + "eventName": "Grand Treasurehunt", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Place", + "Person", + "Find the treasure" + ], + "tagline": "“Decode- Find - Hunt”", + "teamSize": 2, + "outcome": "Enjoy" + }, + { + "id": "NT7", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "રાજા નો ખજાનો", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Find Hidden Items in BVM.\nMaximum Collection will be considered as winner" + ], + "tagline": "“Thief in the night”", + "teamSize": 2, + "outcome": "Enhanced exposure on mythology and public speaking" + }, + { + "id": "NT8", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Math- πRates", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Team needs to perform some physical activities like playing with ball, rope skipping, jumping, Running etc. simultaneously they have to solve some moderate level math and logical questions", + "Two team members are seating opposite to each other facing their back. One has laptop screen showing some geometrical figure and needs to narrate it to the other team member and he/she needs to draw it", + "We will give puzzles to one member of the teams and they need some numbers to complete puzzles and that numbers will be distributed randomly to all other members of the teams on the cards. Member who solving puzzles will get chance based on quick questioning - answering of basic logical question. During their term they can ask for numbers from any person if number is needed then he/she can take it or they can discard it. Next term will be given based on quick questioning – answering and so on" + ], + "tagline": "“Math-e-magic”", + "teamSize": 2, + "outcome": null + }, + { + "id": "NT9", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "SSB", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Participants will be given several negative words using same words they have to form a positive sentence", + "Participants have to perform physical task such as skipping , crouching , pushups etc", + "Pitcure perception in which a blur picture will be shown and have to write a story on what they derive from it", + "Personal Interview" + ], + "tagline": "“Service Before Self”", + "teamSize": 1, + "outcome": "Practical exposure of Defence selection" + }, + { + "id": "NT10", + "participants": [], + "prizeMoney": 0, + "entryFee": 50, + "eventName": "BVM MUN", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Pen paper quiz based on current affairs and General Knowledge", + "A political debate will be conducted on the political issues and participant team will have to debate on that particular topic", + "In which participant will be made delegate of a particular country and he has to present his nation in UN. An issue will be given on which they have to debate and entire house has to come up with a final solution to the issue" + ], + "tagline": "“Are you a true diplomat?”", + "teamSize": 1, + "outcome": "Practical exposure of Defence selection" + }, + { + "id": "NT11", + "participants": [], + "prizeMoney": 0, + "entryFee": 50, + "eventName": "Student of the year", + "managers": [ + { + "name": "Bhavya Tentiya", + "phone": "9016250979" + } + ], + "rounds": [ + "Pen paper base test\nTopic will be: GK and current affairs, riddles and puzzle", + "Physical activity\nParticipants have to perform physical task", + "Treasure Hunt" + ], + "tagline": "“May the best win”", + "teamSize": 1, + "outcome": null + }, + { + "id": "NT12", + "participants": [], + "prizeMoney": 0, + "entryFee": 40, + "eventName": "F.R.I.E.N.D.S", + "managers": [ + { + "name": "Malay Virani", + "phone": "90331995871" + }, + { + "name": "Dhruvraj Kathiya", + "phone": "9081698132" + } + ], + "rounds": [ + "A test Based on friendship. Same Question paper will be given to both participants", + "Ganna Bajana\nOne participant will wear earphone and he/she need to judge his/her partner’s word by lip movement and action", + "True friends\nThere will be a task based on teamwork. One of the participants have to follow the instructions, which will be given by his friend" + ], + "tagline": "“I’ll be there for you!”", + "teamSize": 2, + "outcome": null + }, + { + "id": "NT13", + "participants": [], + "prizeMoney": 0, + "entryFee": 40, + "eventName": "Guru", + "managers": [ + { + "name": "Malay Virani", + "phone": "90331995871" + }, + { + "name": "Dhruvraj Kathiya", + "phone": "9081698132" + } + ], + "rounds": [ + "Do odd jobs or anything entertaining and collect money as much as possible within time limit and submit at the end", + "Collect the things mentioned in a list in 30 mins", + "Collect the things mentioned in a list in 30 mins" + ], + "tagline": "“Touch the sky!!”", + "teamSize": 2, + "outcome": null + }, + { + "id": "NT14", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Roadies", + "managers": [ + { + "name": "Malay Virani", + "phone": "90331995871" + }, + { + "name": "Dhruvraj Kathiya", + "phone": "9081698132" + } + ], + "rounds": [ + "In this round all the participants would be divided into teams of two / three. These teams would have to overcome certain hurdles as a group. On the basis of their performance, top 15-20 teams would be selected for the next round", + "This round is basically based on individual’s capability to perform physically and mentally yet entertain exceptionally in the given scenario. From these participants top 10-15 participant would be selected for the next round", + "This would be a jury based round. Every challenger now will have to face a panel of three to four judges. Here we would be looking forward to a person who gives wittiest, humorous yet the most sensible answers" + ], + "tagline": "“Roadie banega..?”", + "teamSize": 2, + "outcome": null + }, + { + "id": "NT15", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Dalal Street", + "managers": [ + { + "name": "Malay Virani", + "phone": "90331995871" + }, + { + "name": "Dhruvraj Kathiya", + "phone": "9081698132" + } + ], + "rounds": [ + "Participant will get a virtual money and will have to make a maximum profit by trading" + ], + "tagline": "“You might be a redneck if you think the stock market has fence around it”", + "teamSize": 1, + "outcome": null + }, + { + "id": "NT16", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "CS:GO", + "managers": [ + { + "name": "Malay Virani", + "phone": "90331995871" + } + ], + "rounds": [ + "Individual round:-DEATH MATCH", + "2 vs 2 match", + "AWP-GOD (Sniper Round)" + ], + "tagline": "“Kill until triumph”", + "teamSize": 1, + "outcome": null + }, + { + "id": "NT19", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Fly-High!", + "managers": [ + { + "name": "Darshil Mehta", + "phone": "9033583375" + }, + { + "name": "Hemal Parmar", + "phone": "99243601630" + } + ], + "rounds": [ + "Session based on Basics of Aeronautics", + "Explanation and demonstration of basic paper plane designs", + "Paper Airplane Contest" + ], + "tagline": "“Fly till you Glorify”", + "teamSize": 1, + "outcome": "Participants will get the knowledge of basics of Aeronautics design along with fun and healthy competition" + } + ], + "workshop": [ + { + "id": "WS1", + "participants": [], + "prizeMoney": 0, + "entryFee": 200, + "eventName": "Six Sigma Yellow Belt Certification", + "managers": [], + "rounds": [ + "Six Sigma Yellow Belt Certification course by master black belt certified trainer.\nCertificate will be authentic proof of yellow belt" + ], + "tagline": null, + "teamSize": 1, + "outcome": null + }, + { + "id": "WS2", + "participants": [], + "prizeMoney": 0, + "entryFee": 50, + "eventName": "Workshop on stock market trading", + "managers": [], + "rounds": [ + "Basics of stock market\nEffective trading\nTips & tricks" + ], + "tagline": null, + "teamSize": 1, + "outcome": null + }, + { + "id": "WS3", + "participants": [], + "prizeMoney": 0, + "entryFee": 150, + "eventName": "UNITY AR-VR WORKSHOP", + "managers": [ + { + "name": "Darshan Tripathi", + "phone": "9904032167" + }, + { + "name": "Nishita", + "phone": "8160947823" + }, + { + "name": "Prashant Khunt", + "phone": "8238439225" + } + ], + "rounds": [ + "Introduction and demonstration", + "Implementation and VR kit distribution" + ], + "tagline": "Virtually augment your reality", + "teamSize": 1, + "outcome": "Participants will get an in-depth knowledge along with practical exposure of Unity" + }, + { + "id": "WS4", + "participants": [], + "prizeMoney": 0, + "entryFee": 100, + "eventName": "Introduction to ANSYS MAXWELL", + "managers": [ + { + "name": "Neel Patel", + "phone": "9428166033" + }, + { + "name": "Anuja Karavadra", + "phone": "8511284217" + } + ], + "rounds": [ + "Introduction to ANSYS workbench, implementation of electrical systems and its analysis", + "Implementation of wireless charging simulation" + ], + "tagline": null, + "teamSize": 2, + "outcome": "Participants will get an in-depth knowledge along with practical exposure of ANSYS MAXWELL" + }, + { + "id": "WS5", + "participants": [], + "prizeMoney": 0, + "entryFee": 150, + "eventName": "Workshop on Communication networks", + "managers": [ + { + "name": "Viraj Sadhle", + "phone": "8160940692" + }, + { + "name": "Darshana Kumari", + "phone": "8460745725" + }, + { + "name": "Bhargav Naria", + "phone": "9723556233" + } + ], + "rounds": [ + "Fundamentals concepts about working of TCP/IP layers and OSI model along with explanation of what goes on into each layer and simultaneous simulation would be shown for the same. Other topics covered: ad hoc and circuit networks, various protocols along with reference to real life examples" + ], + "tagline": null, + "teamSize": 1, + "outcome": "Get deeper insight of various layers of communication and their application" + } + ], + "cultural": [ + { + "id": "C1", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Quizzitch", + "managers": [ + { + "name": "Mrudang Oza", + "phone": "8469990274" + } + ], + "rounds": [ + "Pen-Paper Round", + "Stage Round with multiple round including Buzzer round, Rapid fire, visual and other rounds" + ], + "tagline": "“Battle of Brains”", + "teamSize": 2, + "outcome": null + }, + { + "id": "C2", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Antakshari", + "managers": [ + { + "name": "Jal Joshi", + "phone": "9016821661" + }, + { + "name": "Harsh Vaidya", + "phone": "9737249040" + } + ], + "rounds": [ + "Elimination Round (normal Antakshari and dhun round)", + "Buzzer round, Dhun round and other interesting rounds" + ], + "tagline": "“Suro ka Mela”", + "teamSize": 2, + "outcome": null + }, + { + "id": "C3", + "participants": [], + "prizeMoney": 0, + "entryFee": 20, + "eventName": "Antakshari", + "managers": [ + { + "name": "Shristy Singh", + "phone": "7043884177" + }, + { + "name": "Kenil Naik", + "phone": "7069873600" + } + ], + "rounds": [ + "Group Discussion (elimination round)", + "Devil’s Advocate- Each participant shall be given a personality, they shall have to become that identity in a court room", + "Personal Interview" + ], + "tagline": "“Do you have it within you?”", + "teamSize": 1, + "outcome": null + }, + { + "id": "C4", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Bolly Mix Holly", + "managers": [ + { + "name": "Muskan Gupta", + "phone": "8000656014" + } + ], + "rounds": [ + "Pen-Paper Elimination (will include cross-word)", + "Stage Round with multiple round including buzzer round and dumb charades" + ], + "tagline": "“Black and White se Colour Tak!”", + "teamSize": 2, + "outcome": null + }, + { + "id": "C5", + "participants": [], + "prizeMoney": 0, + "entryFee": 30, + "eventName": "Qriosity (Biz-Tech)", + "managers": [ + { + "name": "Gautam Vivekanandan", + "phone": "8758192989" + } + ], + "rounds": [ + "Elimination round (Based on Business and Technology)", + "Stage Round with multiple round including Buzzer round , rapid fire round, visual rounds" + ], + "tagline": "“A Biz-Tech Quiz”", + "teamSize": 2, + "outcome": null + }, + { + "id": "C5", + "participants": [], + "prizeMoney": 0, + "entryFee": 20, + "eventName": "Shutter-up", + "managers": [ + { + "name": "Harshal Patel", + "phone": "9016250979" + }, + { + "name": "Pranav Mehta", + "phone": "8849294958" + } + ], + "rounds": [ + "Virtual Round : Participants will be filtered on the basis of uploaded photos, 5 best photos will be exhibited", + "Pop Quiz : A quiz based on 'Photography Workshop' that includes technical aspects of photography", + "Jury Round : On spot photo hunt. Jury will give topics to participants and the deadline will be 4 hours. Participants will then present the photo" + ], + "tagline": "“Don't have a view, have vision”", + "teamSize": 1, + "outcome": "To bring out the best of creativity within" + } + ], + "star": [ + { + "id": "NT17", + "participants": [], + "prizeMoney": 0, + "entryFee": 100, + "eventName": "Vallabh Vidyanagar Ideathon", + "managers": [ + { + "name": "Darshil Mehta", + "phone": "9033583375" + }, + { + "name": "Hemal Parmar", + "phone": "99243601630" + } + ], + "rounds": [ + "Nontech Idea pitching using policy , e-governance and politics", + "Tech Idea pitching ; Improvise VVN using modern engineering techniques", + "SuperTech : Create VVN a Smart City Engineering Marvel" + ], + "tagline": "“Towards Smart Charotar”", + "teamSize": 2, + "outcome": null + }, { + "id": "NT18", + "participants": [], + "prizeMoney": 0, + "entryFee": 50, + "eventName": "B-Plan Contest", + "managers": [ + { + "name": "Darshil Mehta", + "phone": "9033583375" + }, + { + "name": "Hemal Parmar", + "phone": "99243601630" + } + ], + "rounds": [ + "Become a perfectionist event manager", + "Become a perfectionist marketing strategist", + "Survive your business" + ], + "tagline": "“Towards Smart Charotar”", + "teamSize": 2, + "outcome": null + } + ] +} \ No newline at end of file diff --git a/assets/fonts/Abibas.ttf b/assets/fonts/Abibas.ttf new file mode 100644 index 0000000..ac5c108 Binary files /dev/null and b/assets/fonts/Abibas.ttf differ diff --git a/assets/fonts/sadFilms.ttf b/assets/fonts/sadFilms.ttf new file mode 100644 index 0000000..ff23269 Binary files /dev/null and b/assets/fonts/sadFilms.ttf differ diff --git a/assets/images/Civil2.png b/assets/images/Civil2.png new file mode 100644 index 0000000..bb6ce41 Binary files /dev/null and b/assets/images/Civil2.png differ diff --git a/assets/images/Cpit2.png b/assets/images/Cpit2.png new file mode 100644 index 0000000..f313b26 Binary files /dev/null and b/assets/images/Cpit2.png differ diff --git a/assets/images/Ecel2.png b/assets/images/Ecel2.png new file mode 100644 index 0000000..b50e1c9 Binary files /dev/null and b/assets/images/Ecel2.png differ diff --git a/assets/images/Mad2.png b/assets/images/Mad2.png new file mode 100644 index 0000000..e4a63c6 Binary files /dev/null and b/assets/images/Mad2.png differ diff --git a/assets/images/StarEvent2.png b/assets/images/StarEvent2.png new file mode 100644 index 0000000..20bf410 Binary files /dev/null and b/assets/images/StarEvent2.png differ diff --git a/assets/images/cyberclan.jpeg b/assets/images/cyberclan.jpeg new file mode 100644 index 0000000..058a89a Binary files /dev/null and b/assets/images/cyberclan.jpeg differ diff --git a/assets/images/dribbble.svg b/assets/images/dribbble.svg new file mode 100644 index 0000000..5bb00e0 --- /dev/null +++ b/assets/images/dribbble.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/ee2.png b/assets/images/ee2.png new file mode 100644 index 0000000..648257d Binary files /dev/null and b/assets/images/ee2.png differ diff --git a/assets/images/facebook.svg b/assets/images/facebook.svg new file mode 100644 index 0000000..809b81e --- /dev/null +++ b/assets/images/facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/flutterLogo.svg b/assets/images/flutterLogo.svg new file mode 100644 index 0000000..29a1b4a --- /dev/null +++ b/assets/images/flutterLogo.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/assets/images/fulllogonormal.png b/assets/images/fulllogonormal.png new file mode 100644 index 0000000..b9d8483 Binary files /dev/null and b/assets/images/fulllogonormal.png differ diff --git a/assets/images/github_logo.svg b/assets/images/github_logo.svg new file mode 100644 index 0000000..977cf9d --- /dev/null +++ b/assets/images/github_logo.svg @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/images/instagram.svg b/assets/images/instagram.svg new file mode 100644 index 0000000..4cb89d2 --- /dev/null +++ b/assets/images/instagram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/mech2.png b/assets/images/mech2.png new file mode 100644 index 0000000..b83cd18 Binary files /dev/null and b/assets/images/mech2.png differ diff --git a/assets/images/nonTech2.png b/assets/images/nonTech2.png new file mode 100644 index 0000000..c9f5a50 Binary files /dev/null and b/assets/images/nonTech2.png differ diff --git a/assets/images/sharing.svg b/assets/images/sharing.svg new file mode 100644 index 0000000..17c2542 --- /dev/null +++ b/assets/images/sharing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/tech.jpeg b/assets/images/tech.jpeg new file mode 100644 index 0000000..cb3a290 Binary files /dev/null and b/assets/images/tech.jpeg differ diff --git a/assets/images/webDeveloper.svg b/assets/images/webDeveloper.svg new file mode 100644 index 0000000..e30253b --- /dev/null +++ b/assets/images/webDeveloper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/images/workshop2.png b/assets/images/workshop2.png new file mode 100644 index 0000000..8e249bd Binary files /dev/null and b/assets/images/workshop2.png differ diff --git a/assets/images/youtube.svg b/assets/images/youtube.svg new file mode 100644 index 0000000..6e0b080 --- /dev/null +++ b/assets/images/youtube.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig index 592ceee..e8efba1 100644 --- a/ios/Flutter/Debug.xcconfig +++ b/ios/Flutter/Debug.xcconfig @@ -1 +1,2 @@ +#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig index 592ceee..399e934 100644 --- a/ios/Flutter/Release.xcconfig +++ b/ios/Flutter/Release.xcconfig @@ -1 +1,2 @@ +#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/ios/Podfile b/ios/Podfile new file mode 100644 index 0000000..b30a428 --- /dev/null +++ b/ios/Podfile @@ -0,0 +1,90 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '9.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def parse_KV_file(file, separator='=') + file_abs_path = File.expand_path(file) + if !File.exists? file_abs_path + return []; + end + generated_key_values = {} + skip_line_start_symbols = ["#", "/"] + File.foreach(file_abs_path) do |line| + next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ } + plugin = line.split(pattern=separator) + if plugin.length == 2 + podname = plugin[0].strip() + path = plugin[1].strip() + podpath = File.expand_path("#{path}", file_abs_path) + generated_key_values[podname] = podpath + else + puts "Invalid plugin specification: #{line}" + end + end + generated_key_values +end + +target 'Runner' do + use_frameworks! + use_modular_headers! + + # Flutter Pod + + copied_flutter_dir = File.join(__dir__, 'Flutter') + copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework') + copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec') + unless File.exist?(copied_framework_path) && File.exist?(copied_podspec_path) + # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet. + # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration. + # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist. + + generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig') + unless File.exist?(generated_xcode_build_settings_path) + raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path) + cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR']; + + unless File.exist?(copied_framework_path) + FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir) + end + unless File.exist?(copied_podspec_path) + FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir) + end + end + + # Keep pod path relative so it can be checked into Podfile.lock. + pod 'Flutter', :path => 'Flutter' + + # Plugin Pods + + # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock + # referring to absolute paths on developers' machines. + system('rm -rf .symlinks') + system('mkdir -p .symlinks/plugins') + plugin_pods = parse_KV_file('../.flutter-plugins') + plugin_pods.each do |name, path| + symlink = File.join('.symlinks', 'plugins', name) + File.symlink(path, symlink) + pod name, :path => File.join(symlink, 'ios') + end +end + +# Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system. +install! 'cocoapods', :disable_input_output_paths => true + +post_install do |installer| + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + config.build_settings['ENABLE_BITCODE'] = 'NO' + end + end +end diff --git a/ios/Podfile.lock b/ios/Podfile.lock new file mode 100644 index 0000000..8c39f74 --- /dev/null +++ b/ios/Podfile.lock @@ -0,0 +1,34 @@ +PODS: + - Flutter (1.0.0) + - url_launcher (0.0.1): + - Flutter + - url_launcher_macos (0.0.1): + - Flutter + - url_launcher_web (0.0.1): + - Flutter + +DEPENDENCIES: + - Flutter (from `Flutter`) + - url_launcher (from `.symlinks/plugins/url_launcher/ios`) + - url_launcher_macos (from `.symlinks/plugins/url_launcher_macos/ios`) + - url_launcher_web (from `.symlinks/plugins/url_launcher_web/ios`) + +EXTERNAL SOURCES: + Flutter: + :path: Flutter + url_launcher: + :path: ".symlinks/plugins/url_launcher/ios" + url_launcher_macos: + :path: ".symlinks/plugins/url_launcher_macos/ios" + url_launcher_web: + :path: ".symlinks/plugins/url_launcher_web/ios" + +SPEC CHECKSUMS: + Flutter: 0e3d915762c693b495b44d77113d4970485de6ec + url_launcher: a1c0cc845906122c4784c542523d8cacbded5626 + url_launcher_macos: fd7894421cd39320dce5f292fc99ea9270b2a313 + url_launcher_web: e5527357f037c87560776e36436bf2b0288b965c + +PODFILE CHECKSUM: 1b66dae606f75376c5f2135a8290850eeb09ae83 + +COCOAPODS: 1.9.0 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 5314933..52a0290 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 3B80C3941E831B6300D905FE /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; }; 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 7427825710548C4A484D7DB5 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ED2C474B1FE885E98AED86AD /* Pods_Runner.framework */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; }; 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; @@ -39,6 +40,8 @@ 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 3B80C3931E831B6300D905FE /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/App.framework; sourceTree = ""; }; + 4734D66E0389826193D0CCBF /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + 47B5814B806E128781CB7F87 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; @@ -50,6 +53,8 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + ED2C474B1FE885E98AED86AD /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + F2FDBCAFB4E0E66E1DD69D69 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -59,12 +64,21 @@ files = ( 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */, 3B80C3941E831B6300D905FE /* App.framework in Frameworks */, + 7427825710548C4A484D7DB5 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 34E3373F7511D66F47A564A7 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ED2C474B1FE885E98AED86AD /* Pods_Runner.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -84,6 +98,8 @@ 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, + D3E9BC8EE811297031832F0B /* Pods */, + 34E3373F7511D66F47A564A7 /* Frameworks */, ); sourceTree = ""; }; @@ -118,6 +134,17 @@ name = "Supporting Files"; sourceTree = ""; }; + D3E9BC8EE811297031832F0B /* Pods */ = { + isa = PBXGroup; + children = ( + F2FDBCAFB4E0E66E1DD69D69 /* Pods-Runner.debug.xcconfig */, + 4734D66E0389826193D0CCBF /* Pods-Runner.release.xcconfig */, + 47B5814B806E128781CB7F87 /* Pods-Runner.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -125,12 +152,14 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + B96DC11FE688FF356D9EE8DE /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + 1173FA237FF56715CB95D8A5 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -189,6 +218,21 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ + 1173FA237FF56715CB95D8A5 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -217,6 +261,28 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; + B96DC11FE688FF356D9EE8DE /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata index 1d526a1..21a3cc1 100644 --- a/ios/Runner.xcworkspace/contents.xcworkspacedata +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -4,4 +4,7 @@ + + diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index dc6f41c..a748197 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -41,5 +41,10 @@ UIViewControllerBasedStatusBarAppearance + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + diff --git a/lib/AboutPage.dart b/lib/AboutPage.dart new file mode 100644 index 0000000..9368ab5 --- /dev/null +++ b/lib/AboutPage.dart @@ -0,0 +1,93 @@ +import 'package:flutter/material.dart'; +import 'package:udaan2020/Theme/Theme.dart'; +import 'package:udaan2020/widgets/AuboutTab.dart'; +import 'package:udaan2020/widgets/DeveloperTab.dart'; + +class AboutPage extends StatefulWidget { + @override + _StateAboutPage createState() => _StateAboutPage(); +} + +class _StateAboutPage extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + body: DefaultTabController( + length: 2, + child: NestedScrollView( + headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) { + return [ + SliverAppBar( + title: Text( + "About", + style: TextStyle(color: whiteFontColor, letterSpacing: 2), + ), + backgroundColor: iosDarkThemeBlackBgColor, + expandedHeight: 230.0, + floating: false, + pinned: true, + flexibleSpace: FlexibleSpaceBar( + background: Image.asset( + "assets/images/fulllogonormal.png", + fit: BoxFit.cover, + ), + ), + ), + SliverPersistentHeader( + delegate: _SliverAppBarDelegate( + TabBar( + indicatorColor: lightBlue, + labelColor: whiteFontColor, + labelStyle: TextStyle( + fontSize: 18, + fontFamily: "sad films", + letterSpacing: 2), + unselectedLabelColor: Colors.grey, + tabs: [ + Tab( + text: "Developers", + ), + Tab(text: "About"), + ], + ), + ), + pinned: true, + ), + ]; + }, + body: TabBarView( + children: [ + DeveloperTab(), + AboutUs() + ], + ), + ), + )); + } +} + +class _SliverAppBarDelegate extends SliverPersistentHeaderDelegate { + _SliverAppBarDelegate(this._tabBar); + + final TabBar _tabBar; + + @override + double get minExtent => _tabBar.preferredSize.height; + + @override + double get maxExtent => _tabBar.preferredSize.height; + + @override + Widget build( + BuildContext context, double shrinkOffset, bool overlapsContent) { + return new Container( + color: iosDarkThemeBlackBgColor, + child: _tabBar, + ); + } + + @override + bool shouldRebuild(_SliverAppBarDelegate oldDelegate) { + return false; + } +} diff --git a/lib/Departments.dart b/lib/Departments.dart old mode 100644 new mode 100755 index 7781b6e..013abf3 --- a/lib/Departments.dart +++ b/lib/Departments.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:udaan2020/Theme/Theme.dart'; import 'package:udaan2020/models/EventDetail.dart'; import 'ListEvents.dart'; import 'models/Event.dart'; @@ -11,40 +12,129 @@ class Departments extends StatefulWidget { } class _DepartmentsState extends State { - List depts = ["CP / IT", "CE", "ME / PE", "EL", "EE"]; + List depts = [ + "Cyber-Clan", + "Road to Urbanization", + "Pulleying the Future", + "Wire-More to Wireless", + "Lighting Ears Ahead" + ]; + final icons = [ + "assets/images/Cpit2.png", + "assets/images/Civil2.png", + "assets/images/mech2.png", + "assets/images/Ecel2.png", + "assets/images/ee2.png" + ]; List eventList; + List children = []; void go(index) { - switch (depts[index]) { - case "CP / IT": + String assetName; + switch (index) { + case "Cyber-Clan": eventList = widget.event.tech.cpit; + assetName = icons[0]; break; - case "CE": + case "Road to Urbanization": eventList = widget.event.tech.ce; + assetName = icons[1]; break; - case "ME / PE": + case "Pulleying the Future": eventList = widget.event.tech.mepr; + assetName = icons[2]; break; - case "EL": + case "Wire-More to Wireless": eventList = widget.event.tech.ecel; + assetName = icons[3]; + break; + case "Lighting Ears Ahead": + eventList = widget.event.tech.ee; + assetName = icons[4]; break; } +// print("list" + eventList.toString()); Navigator.push( context, MaterialPageRoute( - builder: (BuildContext context) => ListEvents(eventList))); + builder: (BuildContext context) => ListEvents(eventList,assetName))); + } + + void buildChildren() { + depts.forEach((f) { + children.add( + GestureDetector( + onTap: () { + go(f); + }, + child: Container( + decoration: BoxDecoration( + image: DecorationImage( + image: AssetImage(icons[depts.indexOf(f)]), + fit: BoxFit.cover, + colorFilter: new ColorFilter.mode( + Colors.black12.withOpacity(0.7), BlendMode.darken), + ), + ), + child: Container( + width: double.infinity, + height: 200, + child: Center( + child: Text(f, + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 45, + color: Colors.white, + fontFamily: "sad films", + shadows: [ + Shadow( + offset: Offset(10.0, 10.0), + blurRadius: 3.0, + color: Color.fromARGB(255, 0, 0, 0), + ), + Shadow( + offset: Offset(10.0, 10.0), + blurRadius: 8.0, + color: Color.fromARGB(125, 0, 0, 0), + ), + ], + ), + )), + ), + ), + ), + ); + }); + } + + @override + void initState() { + // TODO: implement initState + super.initState(); + buildChildren(); } @override Widget build(BuildContext context) { return Scaffold( - body: ListView.builder( - itemCount: depts.length, - itemBuilder: (context, index) { - return ListTile( - title: Text(depts[index]), - onTap: () => go(index), - ); - }), - ); + backgroundColor: iosDarkThemeBlackBgColor, + body: SingleChildScrollView( + child: Container( + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 0), + child: Column( + children: children, + ), + ), + ), + ) +// ListView.builder( +// itemCount: depts.length, +// itemBuilder: (context, index) { +// return ListTile( +// title: Text(depts[index]), +// onTap: () => go(index), +// ); +// }), + ); } } diff --git a/lib/HomePage.dart b/lib/HomePage.dart old mode 100644 new mode 100755 index 512cb16..c0a7c9e --- a/lib/HomePage.dart +++ b/lib/HomePage.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:udaan2020/Theme/Theme.dart'; import 'package:udaan2020/models/EventDetail.dart'; import 'ListEvents.dart'; import 'models/Event.dart'; @@ -12,38 +13,51 @@ class HomePage extends StatefulWidget { class _HomePageState extends State { Event event; List eventList; + List children = []; List events = [ "Technical", "Non-Technical", "Cultural", - "Star", + "Flagship", "Workshop" ]; + final icons = [ + "assets/images/tech.jpeg", + "assets/images/nonTech2.png", + "assets/images/Mad2.png", + "assets/images/StarEvent2.png", + "assets/images/workshop2.png" + ]; void go(index) { - if (events[index].compareTo("Technical") == 0) { + String assetName; + if (index.compareTo("Technical") == 0) { Navigator.push( context, MaterialPageRoute( builder: (BuildContext context) => Departments(event))); } else { - switch (events[index]) { + switch (index) { case "Non-Technical": eventList = event.nonTech; + assetName = icons[1]; break; case "Cultural": eventList = event.cultural; + assetName = icons[2]; break; - case "Star": + case "Flagship": eventList = event.star; + assetName = icons[3]; break; case "Workshop": eventList = event.workshop; + assetName = icons[4]; break; } Navigator.push( context, MaterialPageRoute( - builder: (BuildContext context) => ListEvents(eventList))); + builder: (BuildContext context) => ListEvents(eventList,assetName))); } } @@ -53,24 +67,76 @@ class _HomePageState extends State { event = eventFromJson(s); } + void buildChildren() { + events.forEach((f) { + children.add( + GestureDetector( + onTap: () { + go(f); + }, + child: Container( + decoration: BoxDecoration( + image: DecorationImage( + image: AssetImage(icons[events.indexOf(f)]), + fit: BoxFit.cover, + colorFilter: new ColorFilter.mode( + Colors.black12.withOpacity(0.7), BlendMode.darken), + ), + ), + child: Container( + width: double.infinity, + height: 200, + child: Center( + child: Text( + f, + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 60, + color: Colors.white, + fontFamily: "sad films", + shadows: [ + Shadow( + offset: Offset(10.0, 10.0), + blurRadius: 3.0, + color: Color.fromARGB(255, 0, 0, 0), + ), + Shadow( + offset: Offset(10.0, 10.0), + blurRadius: 8.0, + color: Color.fromARGB(125, 0, 0, 0), + ), + ], + ), + )), + ), + ), + ), + ); + }); + } + @override void initState() { // TODO: implement initState super.initState(); disp(); + buildChildren(); } @override Widget build(BuildContext context) { return Scaffold( - body: ListView.builder( - itemCount: events.length, - itemBuilder: (context, index) { - return ListTile( - title: Text(events[index]), - onTap: () => go(index), - ); - }), - ); + backgroundColor: iosDarkThemeBlackBgColor, + body: SingleChildScrollView( + child: Container( + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 0), + child: Column( + children: children, + ), + ), + ), + ) + ); } } diff --git a/lib/ListEvents.dart b/lib/ListEvents.dart old mode 100644 new mode 100755 index 4f76b0e..fb789a1 --- a/lib/ListEvents.dart +++ b/lib/ListEvents.dart @@ -1,25 +1,19 @@ import 'package:flutter/material.dart'; import 'package:udaan2020/ShowEvent.dart'; +import 'package:udaan2020/Theme/Theme.dart'; import 'package:udaan2020/models/EventDetail.dart'; +import 'package:udaan2020/widgets/CustomListEventsTile.dart'; class ListEvents extends StatefulWidget { - List events; - ListEvents(this.events); + final List events; + String assetName; + ListEvents(this.events,this.assetName); @override _ListEventsState createState() => _ListEventsState(); } class _ListEventsState extends State { - List eventNames = []; @override - void initState() { - // TODO: implement initState - super.initState(); - widget.events.forEach((f) { - eventNames.add(f.eventName); - }); - } - void next(index) { Navigator.push(context, MaterialPageRoute( builder: (BuildContext context) => ShowEvent(widget.events[index]))); @@ -28,13 +22,11 @@ class _ListEventsState extends State { @override Widget build(BuildContext context) { return Scaffold( + backgroundColor: iosDarkThemeBlackBgColor, body: ListView.builder( - itemCount: eventNames.length, + itemCount: widget.events.length, itemBuilder: (context, index) { - return ListTile( - title: Text(eventNames[index]), - onTap: () => next(index), - ); + return CustomListEventsTile(eventName: widget.events[index].eventName,onTap: ()=>next(index),index: index,assetName: widget.assetName,); }), ); } diff --git a/lib/ShowEvent.dart b/lib/ShowEvent.dart old mode 100644 new mode 100755 index 0e39f66..11db616 --- a/lib/ShowEvent.dart +++ b/lib/ShowEvent.dart @@ -1,73 +1,227 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:udaan2020/Theme/Theme.dart'; import 'package:udaan2020/models/EventDetail.dart'; +import 'package:url_launcher/url_launcher.dart'; import 'models/Manager.dart'; class ShowEvent extends StatefulWidget { EventDetail event; ShowEvent(this.event); + @override _ShowEventState createState() => _ShowEventState(); } class _ShowEventState extends State { List managers; - List contacts = []; + List contacts = [], rounds = []; + @override void initState() { // TODO: implement initState super.initState(); managers = widget.event.managers; - buildchildren(); } void buildchildren() { + contacts = []; + rounds = []; managers.forEach((f) { - contacts.add(Column( - children: [Text(f.name), Text(f.phone)], + contacts.add(Container( + width: (MediaQuery.of(context).size.width / 2), + child: Center( + child: Column( + children: [ + Text(f.name, + style: TextStyle(color: lightFontColor, fontSize: 16)), + GestureDetector( + onTap: ()async{ + String url = "tel:"+f.phone; + if (await canLaunch(url)) { + await launch(url); + } else { + print('Could not launch $url'); + } + }, + child: Text(f.phone, + style: TextStyle( + color: iosDarkThemeBlue, + fontSize: 16, + decoration: TextDecoration.underline)), + ) + ], + ), + ), )); }); + int c = 1; + widget.event.rounds.forEach((f) { + rounds.add( + Container( + margin: EdgeInsets.only(bottom: 8), + decoration: BoxDecoration( + border: getBorder(c-1) + ), + child: ListTile( + title: Text( + "Round " + c.toString(), + style: TextStyle( + letterSpacing: 2, + color: whiteFontColor, + fontWeight: FontWeight.w500, + fontSize: 18), + ), + subtitle: Text(f, + style: TextStyle( + letterSpacing: 2, color: lightFontColor, fontSize: 16)), + ), + )); + c++; + }); } @override Widget build(BuildContext context) { + buildchildren(); return Scaffold( - body: SafeArea( - child: SingleChildScrollView( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Text(widget.event.eventName), - Text(widget.event.tagline), - Text("Entry Fees : " + - widget.event.entryFee.toString() + - "/" + - widget.event.teamSize.toString()), - Divider(), - Text("INSTRUCTIONS"), - ListTile( - title: Text("Round 1"), - subtitle: Text(widget.event.rounds[0]), - ), - ListTile( - title: Text("Round 2"), - subtitle: Text(widget.event.rounds[1]), + backgroundColor: iosDarkThemeBlackBgColor, + body: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Container( + height: 76, + child: Stack( + children: [ + Container( + width: double.infinity, + child: Column( + children: [ + Expanded( + child: SizedBox(), + ), + Text( + widget.event.eventName, + style: TextStyle(fontSize: 24, letterSpacing: 2), + ), + ], + ), + ), + ], + )), + Divider( + color: darkBrown, + ), + widget.event.tagline != null + ? Container( + margin: EdgeInsets.all(8.0), + child: Text( + widget.event.tagline, + textAlign: TextAlign.center, + style: TextStyle( + letterSpacing: 3, + fontSize: 22, + fontWeight: FontWeight.w600), + ), + ) + : Container(), + Container( + padding: EdgeInsets.all(8.0), + decoration: BoxDecoration( +// border: getBorder(), ), - ListTile( - title: Text("Round 3"), - subtitle: Text(widget.event.rounds[2]), + child: Column( + children: [ + Container( + margin: EdgeInsets.only(bottom: 8), + width: double.infinity, + decoration:BoxDecoration( + border: Border(bottom: BorderSide(color: darkBrown)) + ), + child: Text( + "INSTRUCTIONS", + textAlign: TextAlign.center, + style: TextStyle( + letterSpacing: 2, + color: iosDarkThemeBlue, + fontSize: 18, + fontWeight: FontWeight.bold), + ), + ), + widget.event.rounds != null + ? Column( + children: rounds, + ) + : Container(), + ], ), - Text("Contact Us"), - SingleChildScrollView( + ), + Container( + margin: EdgeInsets.all(8.0), + width: double.infinity, + child: Text( + "Entry Fees : " + + widget.event.entryFee.toString() + + "/" + + widget.event.teamSize.toString(), + style: TextStyle( + letterSpacing: 2, color: whiteFontColor, fontSize: 16), + textAlign: TextAlign.start, + )), + Container( + margin: EdgeInsets.all(8.0), + child: Text("Contact Us", + style: TextStyle( + color: iosDarkThemeBlue, + fontWeight: FontWeight.w500, + fontSize: 18, + letterSpacing: 2))), + Container( + margin: EdgeInsets.all(8.0), + child: SingleChildScrollView( scrollDirection: Axis.horizontal, - child: Row( - children: contacts, - ), - ) - ], - ), + child: Row(children: contacts), + ), + ) + ], ), ), ); } + + Border getBorder(int i){ + Border border; + switch(i%4){ + case 0: + border = Border( + top: BorderSide(color: iosDarkThemeBlue,width: 4), + left: BorderSide(color: lightBlue,width: 4), + right: BorderSide(color: darkBrown,width: 4), + bottom: BorderSide(color: lightBrown,width: 4),); + break; + case 1: + border = Border( + right: BorderSide(color: iosDarkThemeBlue,width: 4), + top: BorderSide(color: lightBlue,width: 4), + bottom: BorderSide(color: darkBrown,width: 4), + left: BorderSide(color: lightBrown,width: 4),); + break; + case 2: + border = Border( + bottom: BorderSide(color: iosDarkThemeBlue,width: 4), + right: BorderSide(color: lightBlue,width: 4), + left: BorderSide(color: darkBrown,width: 4), + top: BorderSide(color: lightBrown,width: 4),); + break; + case 3: + border = Border( + left: BorderSide(color: iosDarkThemeBlue,width: 4), + bottom: BorderSide(color: lightBlue,width: 4), + top: BorderSide(color: darkBrown,width: 4), + right: BorderSide(color: lightBrown,width: 4),); + break; + } + return border; + } } diff --git a/lib/SplashScreen/SplashScreen.dart b/lib/SplashScreen/SplashScreen.dart new file mode 100644 index 0000000..27f5f92 --- /dev/null +++ b/lib/SplashScreen/SplashScreen.dart @@ -0,0 +1,226 @@ +import 'dart:async'; + +import 'package:flutter/material.dart'; +import 'package:udaan2020/AboutPage.dart'; +import 'package:udaan2020/HomePage.dart'; +import 'package:udaan2020/Theme/Theme.dart'; + +class SplashScreen extends StatefulWidget { + @override + State createState() { + // TODO: implement createState + return _StateSplashScreen(); + } +} + +class _StateSplashScreen extends State + with TickerProviderStateMixin { + AnimationController controller; + AnimationController controllerButton1; + AnimationController controllerButton2; + Animation heartbeatAnimation; + Animation button1Animation; + Animation button2Animation; + var timeout = const Duration(seconds: 6); + var ms = const Duration(milliseconds: 1); + bool completed = false; + bool completedButton1 = false; + bool completedButton2 = false; + bool displayButton1 = false; + bool displayButton2 = false; + + @override + void initState() { + // TODO: implement initState + super.initState(); + controller = + AnimationController(vsync: this, duration: Duration(seconds: 3)); + controllerButton1 = + AnimationController(vsync: this, duration: Duration(milliseconds: 700)); + controllerButton2 = + AnimationController(vsync: this, duration: Duration(milliseconds: 700)); + } + + animate() async { +// Future.delayed(Duration(seconds: 2)); + if (completed == false) { + heartbeatAnimation = + Tween(begin: 0, end: MediaQuery.of(context).size.width) + .animate(controller); + button1Animation = Tween( + begin: 0, end: (MediaQuery.of(context).size.width / 2) - 28) + .animate(controllerButton1); + button2Animation = Tween( + begin: 0, end: (MediaQuery.of(context).size.width / 2) - 28) + .animate(controllerButton2); + controller.forward().whenComplete(() async { + setState(() { + completed = true; + displayButton1 = true; + completedButton1 = true; + }); + controllerButton1.forward(); + await Future.delayed(Duration(milliseconds: 350)); + setState(() { + completedButton2 = true; + displayButton2 = true; + }); + controllerButton2.forward().whenComplete(() {}); + }); + } + } + +// await Future.delayed(Duration(seconds: 1)); + @override + Widget build(BuildContext context) { + animate(); + // TODO: implement build + return AnimatedBuilder( + animation: heartbeatAnimation, + builder: (context, child) { + return Scaffold( + backgroundColor: iosDarkThemeBlackBgColor, + body: Stack( + children: [ + Center( + child: Container( + child: Image.asset( + "assets/images/fulllogonormal.png", + gaplessPlayback: true, + width: heartbeatAnimation.value, + ), + ), + ), + Container( + child: Column( + children: [ + Expanded( + child: SizedBox(), + ), + Container( + height: 60, + margin: EdgeInsets.all(20), + child: Row( + children: [ +// (displayButton1)? + Expanded( + child: Center( + child: GestureDetector( + child: AnimatedBuilder( + animation: button1Animation, + builder: + (BuildContext context, Widget child) { + return Container( + margin: EdgeInsets.only(left: 8), + width: button1Animation.value, + height: (button1Animation.value/3<60)?button1Animation.value/3:60.0, + decoration: BoxDecoration( + border: (completedButton1) + ? getBorder(0) + : null), + child: FlatButton( + onPressed: ()=>Navigator.push(context, MaterialPageRoute(builder: (context) => AboutPage())), + child: Text( + "About Us", + overflow: TextOverflow.ellipsis, + textAlign: TextAlign.center, + style: TextStyle( + color: whiteFontColor, + fontSize: 18), + ))); + }, + ), + ), + ), + ), +// :Container(), +// (displayButton2)? + Expanded( + child: Center( + child: GestureDetector( + child: AnimatedBuilder( + animation: button2Animation, + builder: + (BuildContext context, Widget child) { + return Container( + margin: EdgeInsets.only(left: 8), + width: button2Animation.value, + height: (button2Animation.value/3<60)?button2Animation.value/3:60.0, + decoration: BoxDecoration( + border: (completedButton2) + ? getBorder(1) + : null), + child: FlatButton( + onPressed: ()=>Navigator.push(context, MaterialPageRoute(builder: (context) => HomePage())), + child: Text( + "Explore", + overflow: TextOverflow.ellipsis, + textAlign: TextAlign.center, + style: TextStyle( + color: whiteFontColor, + fontSize: 18), + ))); + }, + ), + ), + ), + ) +// :Container(), + ], + ), + ) + ], + ), + ) + ], + ), + ); + }, + ); + } + + Border getBorder(int i) { + Border border; + switch (i % 4) { + case 0: + border = Border( + top: BorderSide(color: iosDarkThemeBlue, width: 4), + left: BorderSide(color: lightBlue, width: 4), + right: BorderSide(color: darkBrown, width: 4), + bottom: BorderSide(color: lightBrown, width: 4), + ); + break; + case 1: + border = Border( + right: BorderSide(color: iosDarkThemeBlue, width: 4), + top: BorderSide(color: lightBlue, width: 4), + bottom: BorderSide(color: darkBrown, width: 4), + left: BorderSide(color: lightBrown, width: 4), + ); + break; + case 2: + border = Border( + bottom: BorderSide(color: iosDarkThemeBlue, width: 4), + right: BorderSide(color: lightBlue, width: 4), + left: BorderSide(color: darkBrown, width: 4), + top: BorderSide(color: lightBrown, width: 4), + ); + break; + case 3: + border = Border( + left: BorderSide(color: iosDarkThemeBlue, width: 4), + bottom: BorderSide(color: lightBlue, width: 4), + top: BorderSide(color: darkBrown, width: 4), + right: BorderSide(color: lightBrown, width: 4), + ); + break; + } + return border; + } + + @override + void dispose() { + super.dispose(); + controller.dispose(); + } +} diff --git a/lib/Theme/Theme.dart b/lib/Theme/Theme.dart new file mode 100644 index 0000000..11e89ee --- /dev/null +++ b/lib/Theme/Theme.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +Color darkBrown = Color.fromRGBO(188, 109, 73, 1); +Color lightBrown = Color.fromRGBO(247, 175, 126, 1); +Color darkBlue = Color.fromRGBO(5, 112, 134, 1); +Color lightBlue = Color.fromRGBO(114, 217, 253, 1); +Color iosDarkThemeBlue = Color.fromRGBO(10, 132, 255, 1); +Color iosDarkThemeBlackBgColor = Color.fromRGBO(28, 28, 30, 1); +Color whiteFontColor = Color.fromRGBO(242, 242, 247, 1); +Color lightFontColor = Color.fromRGBO(142, 142, 147, 1); \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart old mode 100644 new mode 100755 index 69be8ca..3542939 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,4 +1,7 @@ import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:udaan2020/AboutPage.dart'; +import 'package:udaan2020/SplashScreen/SplashScreen.dart'; import 'HomePage.dart'; void main() => runApp(MyApp()); @@ -6,11 +9,18 @@ void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { + SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle( + statusBarBrightness: Brightness.dark, + statusBarIconBrightness: Brightness.light, + statusBarColor: Colors.transparent)); return MaterialApp( - title: 'Flutter Demo', - theme: - ThemeData(primarySwatch: Colors.blue, brightness: Brightness.light), - home: HomePage(), + title: 'Udaan 2020', + theme: ThemeData( + fontFamily: "sad films", + primarySwatch: Colors.blue, + brightness: Brightness.dark), +// home: AboutPage(), + home: SplashScreen(), ); } } diff --git a/lib/models/Event.dart b/lib/models/Event.dart old mode 100644 new mode 100755 index 4f8acad..23075e2 --- a/lib/models/Event.dart +++ b/lib/models/Event.dart @@ -18,7 +18,8 @@ class Event { Tech.fromJson(json["tech"]), List.from( json["non-tech"].map((x) => EventDetail.fromJson(x))), - List.from(json["workshop"].map((x) => x)), + List.from( + json["workshop"].map((x) => EventDetail.fromJson(x))), List.from( json["cultural"].map((x) => EventDetail.fromJson(x))), List.from( diff --git a/lib/models/EventDetail.dart b/lib/models/EventDetail.dart old mode 100644 new mode 100755 index ef63b03..cea3a8a --- a/lib/models/EventDetail.dart +++ b/lib/models/EventDetail.dart @@ -1,16 +1,16 @@ import 'Manager.dart'; class EventDetail { - String _id; - List _participants; - int _prizeMoney; - int _entryFee; - String _eventName; - List _managers; - List _rounds; - String _tagline; - int _teamSize; - String _objective; + var _id; + List _participants; + var _prizeMoney; + var _entryFee; + var _eventName; + List _managers; + List _rounds; + var _tagline; + var _teamSize; + var _objective; String get id => _id; @@ -40,7 +40,7 @@ class EventDetail { List.from(json["rounds"].map((x) => x)), json["tagline"], json["teamSize"], - json["objective"], + json["outcome"], ); List get participants => _participants; diff --git a/lib/models/Manager.dart b/lib/models/Manager.dart old mode 100644 new mode 100755 diff --git a/lib/models/Tech.dart b/lib/models/Tech.dart old mode 100644 new mode 100755 diff --git a/lib/widgets/AuboutTab.dart b/lib/widgets/AuboutTab.dart new file mode 100644 index 0000000..13575be --- /dev/null +++ b/lib/widgets/AuboutTab.dart @@ -0,0 +1,141 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:udaan2020/Theme/Theme.dart'; + +class AboutUs extends StatefulWidget { + @override + _AboutUsState createState() => _AboutUsState(); +} + +class _AboutUsState extends State { + @override + Widget build(BuildContext context) { + return Container( + child: Padding( + padding: EdgeInsets.all(8), + child: ListView( + children: [ + Text( + "About BVM", + textAlign: TextAlign.center, + style: TextStyle(color: iosDarkThemeBlue, fontSize: 35), + ), + SizedBox( + height: 8, + width: double.maxFinite, + child: Divider( + color: darkBrown, + thickness: 3, + ), + ), + Text( + 'We birla vishvakarma Mahavidyalaya(BVM) family take the pride of being the first engineering college in the state of Gujarat, founded in 1948 and inaugurated by last Viceroy of India "Lord Mountbatten". ', + style: TextStyle(fontSize: 16, color: whiteFontColor), + textAlign: TextAlign.center, + ), + SizedBox( + height: 8, + ), + Text( + "About Udaan", + textAlign: TextAlign.center, + style: TextStyle(color: iosDarkThemeBlue, fontSize: 35), + ), + SizedBox( + height: 8, + width: double.maxFinite, + child: Divider( + color: darkBrown, + thickness: 3, + ), + ), + Text( + 'UDAAN is not just an annual function but a celebration of what the students here are and about their aspirations and dreams. As the name defines it is joint effort by each one to help provide the flight and wings to the bright ideas of young minds.', + style: TextStyle(fontSize: 16, color: whiteFontColor), + textAlign: TextAlign.center, + ), + SizedBox( + height: 8, + ), + Text( + "Follow Us", + textAlign: TextAlign.center, + style: TextStyle(color: iosDarkThemeBlue, fontSize: 35), + ), + SizedBox( + height: 8, + width: double.maxFinite, + child: Divider( + color: darkBrown, + thickness: 3, + ), + ), + Container( + margin: EdgeInsets.only(top: 8.0), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + SvgPicture.asset( + "assets/images/instagram.svg", + color: whiteFontColor, + height: 40, + width: 40, + ), + SvgPicture.asset( + "assets/images/facebook.svg", + color: whiteFontColor, + height: 40, + width: 40, + ), + SvgPicture.asset( + "assets/images/youtube.svg", + color: whiteFontColor, + height: 40, + width: 40, + ), + SvgPicture.asset( + "assets/images/dribbble.svg", + color: whiteFontColor, + height: 40, + width: 40, + ), + SvgPicture.asset( + "assets/images/sharing.svg", + color: whiteFontColor, + height: 40, + width: 40, + ) + ], + ), + ), + SizedBox( + height: 8, + ), + Text( + "Reach Us", + textAlign: TextAlign.center, + style: TextStyle(color: iosDarkThemeBlue, fontSize: 35), + ), + SizedBox( + height: 8, + width: double.maxFinite, + child: Divider( + color: darkBrown, + thickness: 3, + ), + ), + Text( + 'BVM Engineering College, Opp. Shastri Maidan, Mota Bazzar, Vallabh Vidyanagar, Anand, Gujarat - 388120, India', + style: TextStyle(fontSize: 16, color: whiteFontColor), + textAlign: TextAlign.center, + ), + ], + ), + ), + height: 300, + width: double.infinity, + //color: Colors.green, + color: iosDarkThemeBlackBgColor, + ); + } +} diff --git a/lib/widgets/CustomListEventsTile.dart b/lib/widgets/CustomListEventsTile.dart new file mode 100644 index 0000000..f02cad2 --- /dev/null +++ b/lib/widgets/CustomListEventsTile.dart @@ -0,0 +1,85 @@ +import 'package:flutter/material.dart'; +import 'package:udaan2020/Theme/Theme.dart'; + +class CustomListEventsTile extends StatefulWidget { + String eventName; + Function onTap; + int index; + String assetName; + CustomListEventsTile({this.eventName,this.onTap,this.index,this.assetName}); + + @override + State createState() { + // TODO: implement createState + return _StateCustomListEventsTile(); + } +} + +class _StateCustomListEventsTile extends State { + + @override + Widget build(BuildContext context) { + // TODO: implement build + return GestureDetector( + onTap: widget.onTap, + child: Container( + margin: EdgeInsets.all(8.0), + width: double.infinity, + height: 200, + decoration: BoxDecoration( + image: DecorationImage( + image: AssetImage(widget.assetName??""), + fit: BoxFit.cover, + colorFilter: new ColorFilter.mode( + Colors.black12.withOpacity(0.8), BlendMode.darken), + ), + border: getBorder(widget.index),), + child: Center( + child: Text( + widget.eventName, + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 40, + color: whiteFontColor, + fontFamily: "sad films", + ), + ), + ), + ), + ); + } + Border getBorder(int i){ + Border border; + switch(i%4){ + case 0: + border = Border( + top: BorderSide(color: iosDarkThemeBlue,width: 4), + left: BorderSide(color: lightBlue,width: 4), + right: BorderSide(color: darkBrown,width: 4), + bottom: BorderSide(color: lightBrown,width: 4),); + break; + case 1: + border = Border( + right: BorderSide(color: iosDarkThemeBlue,width: 4), + top: BorderSide(color: lightBlue,width: 4), + bottom: BorderSide(color: darkBrown,width: 4), + left: BorderSide(color: lightBrown,width: 4),); + break; + case 2: + border = Border( + bottom: BorderSide(color: iosDarkThemeBlue,width: 4), + right: BorderSide(color: lightBlue,width: 4), + left: BorderSide(color: darkBrown,width: 4), + top: BorderSide(color: lightBrown,width: 4),); + break; + case 3: + border = Border( + left: BorderSide(color: iosDarkThemeBlue,width: 4), + bottom: BorderSide(color: lightBlue,width: 4), + top: BorderSide(color: darkBrown,width: 4), + right: BorderSide(color: lightBrown,width: 4),); + break; + } + return border; + } +} diff --git a/lib/widgets/DeveloperTab.dart b/lib/widgets/DeveloperTab.dart new file mode 100644 index 0000000..7bb70ca --- /dev/null +++ b/lib/widgets/DeveloperTab.dart @@ -0,0 +1,251 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:udaan2020/Theme/Theme.dart'; +import 'package:url_launcher/url_launcher.dart'; + +class DeveloperTab extends StatefulWidget { + @override + State createState() { + // TODO: implement createState + return _StateDeveloperTab(); + } +} + +class _StateDeveloperTab extends State { + @override + Widget build(BuildContext context) { + // TODO: implement build + return Container( + color: iosDarkThemeBlackBgColor, + child: ListView( + children: [ + ListItem( + technology: "FLUTTER", + name: "Ahmed Gagan", + mobileNumber: "8980052099", + gitHubLink: "https://github.com/Ahmedgagan", + position: "Flutter Developer", + listIndex: 0, + email: "ahmedgagan3@gmail.com", + ), + ListItem( + technology: "FLUTTER", + name: "Ahmed Gagan", + mobileNumber: "8980052099", + gitHubLink: "https://github.com/Ahmedgagan", + position: "Flutter Developer", + listIndex: 1, + email: "ahmedgagan3@gmail.com", + ), + ListItem( + technology: "WEB", + name: "Mitesh Chaudhary", + mobileNumber: "8980052099", + gitHubLink: "https://github.com/Ahmedgagan", + position: "VUE JS", + listIndex: 2, + email: "mitesh@gmail.com", + ), + ListItem( + technology: "WEB", + name: "Ahmed Gagan", + mobileNumber: "8980052099", + gitHubLink: "https://github.com/Ahmedgagan", + position: "VUE JS", + listIndex: 3, + email: "ahmedgagan3@gmail.com", + ), + ListItem( + technology: "FLUTTER", + name: "Ahmed Gagan", + mobileNumber: "8980052099", + gitHubLink: "https://github.com/Ahmedgagan", + position: "Flutter Developer", + listIndex: 4, + email: "ahmedgagan3@gmail.com", + ), + ], + ), + ); + } +} +class ListItem extends StatelessWidget { + String technology; + String name; + String mobileNumber; + String email; + String gitHubLink; + String position; + int listIndex; + + ListItem( + {this.technology, + this.name, + this.mobileNumber, + this.gitHubLink, + this.position, + this.listIndex, + this.email}); + + @override + Widget build(BuildContext context) { + // TODO: implement build + return Container( + decoration: BoxDecoration( + border: getBorder(listIndex), color: Color.fromRGBO(58, 58, 58, 1)), + width: double.infinity, + margin: EdgeInsets.all(8), + padding: EdgeInsets.all(8), + child: Container( + child: Row( + children: [ + Expanded( + flex: 3, + child: Center( + child: Container( + child: SvgPicture.asset( + (technology=="FLUTTER")?"assets/images/flutterLogo.svg":"assets/images/webDeveloper.svg", + color: whiteFontColor, + fit: BoxFit.cover, + height: 60, + width: 60, + ), + ), + ), + ), + Expanded( + flex: 7, + child: Container( + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Container( + margin: EdgeInsets.only(bottom: 8), + child: Column( + children: [ + Container( + width: double.infinity, + child: Text( + name, + style: TextStyle(letterSpacing: 2, fontSize: 20,), + textAlign: TextAlign.right, + )), + Container( + width: double.infinity, + child: Text( + position, + style: + TextStyle(letterSpacing: 2, fontSize: 14), + textAlign: TextAlign.right, + )), + ], + ), + ), + Container( + child: Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + GestureDetector( + onTap:() async{ + String url = "tel:"+mobileNumber; + if (await canLaunch(url)) { + await launch(url); + } else { + print('Could not launch $url'); + } + }, + child: Container( + margin: EdgeInsets.all(8), + child: Center( + child: Icon( + Icons.phone, + size: 30, + ))), + ), + GestureDetector( + onTap:() async{ + String url = "mailto:"+email+"?subject=Developer%20Invitation%20from%20udaan2020%20Application&body=Hey%20I%20have%20a%20developing%20related%20work%20for%20you"; + if (await canLaunch(url)) { + await launch(url); + } else { + print('Could not launch $url'); + } + }, + child: Container( + margin: EdgeInsets.all(8), + child: Center( + child: Icon( + Icons.email, + size: 30, + ))), + ), + GestureDetector( + onTap:() async{ + String url = gitHubLink; + if (await canLaunch(url)) { + await launch(url); + } else { + print('Could not launch $url'); + } + }, + child: Container( + margin: EdgeInsets.all(8), + child: Center( + child: SvgPicture.asset( + "assets/images/github_logo.svg", + color: whiteFontColor, + height: 25, + width: 25, + ),)), + ) + ], + ), + ) + ], + ), + )) + ], + ), + ), + ); + } + + Border getBorder(int i) { + Border border; + switch (i % 4) { + case 0: + border = Border( + top: BorderSide(color: iosDarkThemeBlue, width: 4), + left: BorderSide(color: lightBlue, width: 4), + right: BorderSide(color: darkBrown, width: 4), + bottom: BorderSide(color: lightBrown, width: 4), + ); + break; + case 1: + border = Border( + right: BorderSide(color: iosDarkThemeBlue, width: 4), + top: BorderSide(color: lightBlue, width: 4), + bottom: BorderSide(color: darkBrown, width: 4), + left: BorderSide(color: lightBrown, width: 4), + ); + break; + case 2: + border = Border( + bottom: BorderSide(color: iosDarkThemeBlue, width: 4), + right: BorderSide(color: lightBlue, width: 4), + left: BorderSide(color: darkBrown, width: 4), + top: BorderSide(color: lightBrown, width: 4), + ); + break; + case 3: + border = Border( + left: BorderSide(color: iosDarkThemeBlue, width: 4), + bottom: BorderSide(color: lightBlue, width: 4), + top: BorderSide(color: darkBrown, width: 4), + right: BorderSide(color: lightBrown, width: 4), + ); + break; + } + return border; + } +} diff --git a/pubspec.lock b/pubspec.lock index fcf6763..c1b74ee 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -69,11 +69,23 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + url: "https://pub.dartlang.org" + source: hosted + version: "0.17.3+1" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" image: dependency: transitive description: @@ -102,6 +114,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.6.4" + path_drawing: + dependency: transitive + description: + name: path_drawing + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.1" + path_parsing: + dependency: transitive + description: + name: path_parsing + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.4" pedantic: dependency: transitive description: @@ -116,6 +142,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.4.0" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" quiver: dependency: transitive description: @@ -177,6 +210,34 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.1.6" + url_launcher: + dependency: "direct main" + description: + name: url_launcher + url: "https://pub.dartlang.org" + source: hosted + version: "5.4.2" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + url: "https://pub.dartlang.org" + source: hosted + version: "0.0.1+4" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.6" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1+1" vector_math: dependency: transitive description: @@ -193,3 +254,4 @@ packages: version: "3.5.0" sdks: dart: ">=2.4.0 <3.0.0" + flutter: ">=1.12.8 <2.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index fbe2865..1a9a54a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -23,6 +23,8 @@ dependencies: # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^0.1.2 + url_launcher: + flutter_svg: dev_dependencies: flutter_test: @@ -43,6 +45,26 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - assets/data.json + - assets/images/Civil2.png + - assets/images/tech.jpeg + - assets/images/Cpit2.png + - assets/images/Ecel2.png + - assets/images/ee2.png + - assets/images/Mad2.png + - assets/images/mech2.png + - assets/images/nonTech2.png + - assets/images/StarEvent2.png + - assets/images/workshop2.png + - assets/images/cyberclan.jpeg + - assets/images/fulllogonormal.png + - assets/images/flutterLogo.svg + - assets/images/github_logo.svg + - assets/images/webDeveloper.svg + - assets/images/facebook.svg + - assets/images/dribbble.svg + - assets/images/instagram.svg + - assets/images/sharing.svg + - assets/images/youtube.svg # - images/a_dot_burr.jpeg # - images/a_dot_ham.jpeg @@ -57,7 +79,10 @@ flutter: # "family" key with the font family name, and a "fonts" key with a # list giving the asset and other descriptors for the font. For # example: - # fonts: + fonts: + - family: sad films + fonts: + - asset: assets/fonts/Abibas.ttf # - family: Schyler # fonts: # - asset: fonts/Schyler-Regular.ttf