Project Overview:
This project is a web application built using Streamlit, a powerful Python framework for creating interactive web applications. The platform showcases a diverse set of features, including weather data, project displays, and personal information about the developer. The application is designed for ease of use and provides a rich, interactive user experience.
Key Technologies Used
Streamlit: Front-end framework for building the app interface.
Python: Backend programming language.
Pandas, NumPy: For data manipulation and numerical operations.
Matplotlib: Used for visualizations and data representation.
Pillow: For image processing tasks.
Requests: To fetch external data via APIs.
Streamlit-Lottie: To integrate Lottie animations into the app.
Core Features and Functionalities
Weather Information: Displays real-time weather updates (temperature and "feels like") based on the selected location, fetched from the OpenWeatherMap API.
Date & Time: Dynamic display of the current date and time.
Lottie Animations: Interactive section for displaying animations that enhance the user interface.
Project Showcase: Displays Kiran’s featured projects with categories and subcategories, allowing users to explore detailed descriptions.
Image Upload/Camera Capture: Users can upload images or take photos using their device, which are displayed on the page.
Contact Form: Enables users to contact Kiran directly through a simple, easy-to-use form.
Project Workflow
The application consists of multiple pages with specific functionality:
Homepage: The central layout featuring weather data, Lottie animations, a personal introduction, project showcases, and image upload options.
Weather Functionality: Utilizes the OpenWeatherMap API to fetch real-time weather data based on user location.
Lottie Animations: Animation options are integrated using the load_lottieurl function, enriching the user experience.
Projects Showcase: Displays detailed project descriptions, categorized by type (e.g., Excel, SQL, Python, Tableau). Links are provided for further exploration.
Contact Page: Users can reach out via a simple form, which collects essential details like name, email, and message.
Important Files
Homepage.py: Contains the main layout and all interactive features of the app.
3_Contact.py: Manages the contact form for user inquiries.
2_Projects.py: A placeholder for the projects page.
database.csv: Contains sample data for the app.
requirements.txt: Lists the Python packages needed for the project.