CoolFace
Apppublic

RashidQutub/CountriesIntroduction_App

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
app.py150 linesDownload Raw Back to root
1import streamlit as st2 3# Flag URLs4PAKISTAN_FLAG = "https://upload.wikimedia.org/wikipedia/commons/3/32/Flag_of_Pakistan.svg"5PARTY_FLAGS = {6    "Sindh": "https://upload.wikimedia.org/wikipedia/en/8/84/PPP_flag.svg",  # Pakistan Peoples Party7    "Baluchistan": "https://upload.wikimedia.org/wikipedia/commons/e/ed/Flag_of_Balochistan_Awami_Party.svg",  # Balochistan Awami Party8    "Punjab": "https://upload.wikimedia.org/wikipedia/commons/1/19/Flag_of_PMLN.svg",  # Pakistan Muslim League (N)9    "KhyberPukhtoonkhwa": "https://upload.wikimedia.org/wikipedia/commons/7/7e/Flag_of_PTI.svg",  # Pakistan Tehreek-e-Insaf10}11 12# Province data with a base of 10 largest cities13PROVINCE_DATA = {14    "Sindh": {15        "color": "green",16        "party": "Pakistan Peoples Party (PPP)",17        "cities": {18            "Karachi": {19                "population": "16.05 million",20                "locations": ["Clifton Beach", "Quaid-e-Azam's Mausoleum"],21                "entertainment": ["Port Grand", "Dolmen Mall"],22                "universities": ["IBA Karachi", "Karachi University"],23            },24            "Hyderabad": {25                "population": "1.73 million",26                "locations": ["Rani Bagh", "Pacco Qillo"],27                "entertainment": ["Boulevard Mall", "Sindh Museum"],28                "universities": ["Mehran University", "Sindh University"],29            },30            "Sukkur": {31                "population": "551,357",32                "locations": ["Lansdowne Bridge", "Lab-e-Mehran"],33                "entertainment": ["Sukkur Barrage Park"],34                "universities": ["IBA Sukkur"],35            },36            "Larkana": {37                "population": "490,508",38                "locations": ["Mohenjo-Daro", "Jinnah Park"],39                "entertainment": ["Shahnawaz Bhutto Library"],40                "universities": ["Chandka Medical College"],41            },42        },43    },44    "Baluchistan": {45        "color": "blue",46        "party": "Balochistan Awami Party (BAP)",47        "cities": {48            "Quetta": {49                "population": "1.2 million",50                "locations": ["Hanna Lake", "Ziarat Residency"],51                "entertainment": ["Millennium Mall", "Askari Park"],52                "universities": ["BUITEMS", "University of Balochistan"],53            },54            "Gwadar": {55                "population": "85,000",56                "locations": ["Gwadar Port", "Hammerhead"],57                "entertainment": ["Golden Beach", "Local Markets"],58                "universities": ["Gwadar Development Authority College"],59            },60        },61    },62    "Punjab": {63        "color": "purple",64        "party": "Pakistan Muslim League (N)",65        "cities": {66            "Lahore": {67                "population": "11.13 million",68                "locations": ["Badshahi Mosque", "Lahore Fort"],69                "entertainment": ["Emporium Mall", "Fortress Stadium"],70                "universities": ["LUMS", "Punjab University"],71            },72            "Rawalpindi": {73                "population": "2.1 million",74                "locations": ["Ayub Park", "Raja Bazaar"],75                "entertainment": ["The Mall", "Cinepax"],76                "universities": ["Fatima Jinnah University", "NUST"],77            },78        },79    },80    "KhyberPukhtoonkhwa": {81        "color": "navy blue",82        "party": "Pakistan Tehreek-e-Insaf (PTI)",83        "cities": {84            "Peshawar": {85                "population": "1.97 million",86                "locations": ["Bala Hisar Fort", "Sethi House"],87                "entertainment": ["Dean's Shopping Mall", "Tatara Park"],88                "universities": ["UET Peshawar", "Peshawar University"],89            },90            "Abbottabad": {91                "population": "132,000",92                "locations": ["Shimla Hill", "Ilyasi Masjid"],93                "entertainment": ["Lady Garden Park", "Abbottabad Mall"],94                "universities": ["COMSATS Abbottabad", "Hazara University"],95            },96        },97    },98}99 100# Main app101def main():102    # Display national flag103    st.image(PAKISTAN_FLAG, width=100)104    st.title("Introduction to the Provinces of Pakistan")105 106    # Sidebar for province selection107    province = st.sidebar.radio("Select a Province", list(PROVINCE_DATA.keys()))108 109    if province:110        data = PROVINCE_DATA[province]111        st.header(f"{province} - {data['party']}")112        st.image(PARTY_FLAGS[province], width=100)113        st.markdown(f"### Political Party: {data['party']}")114        st.markdown(f"**Province Color:** {data['color']}")115 116        # City selection and addition functionality117        city = st.selectbox(f"Select a City in {province}", list(data["cities"].keys()))118 119        if city:120            city_data = data["cities"][city]121            st.subheader(f"City: {city}")122            st.markdown(f"**Population:** {city_data['population']}")123            st.markdown(f"**Distinguished Locations:** {', '.join(city_data['locations'])}")124            st.markdown(f"**Entertainment Places:** {', '.join(city_data['entertainment'])}")125            st.markdown(f"**Famous Universities:** {', '.join(city_data['universities'])}")126 127        # Add new cities128        st.markdown("---")129        st.subheader("Add New City")130        new_city_name = st.text_input("City Name")131        new_city_population = st.text_input("Population")132        new_city_locations = st.text_area("Distinguished Locations (comma-separated)")133        new_city_entertainment = st.text_area("Entertainment Places (comma-separated)")134        new_city_universities = st.text_area("Famous Universities (comma-separated)")135 136        if st.button("Add City"):137            if new_city_name and new_city_population:138                data["cities"][new_city_name] = {139                    "population": new_city_population,140                    "locations": [loc.strip() for loc in new_city_locations.split(",")],141                    "entertainment": [ent.strip() for ent in new_city_entertainment.split(",")],142                    "universities": [uni.strip() for uni in new_city_universities.split(",")],143                }144                st.success(f"{new_city_name} has been added to {province}!")145            else:146                st.error("Please provide at least the city name and population.")147 148if __name__ == "__main__":149    main()150