This is a personal website built using Streamlit, featuring multiple pages and interactive components.
project/
├── streamlit_app.py # Main application entry point
├── .streamlit/ # Streamlit configuration
│ └── config.toml # Streamlit configuration file
├── components/ # Reusable UI components
│ ├── footer.py # Page footer component
│ ├── interactive.py # Interactive visualizations
│ └── styles.py # CSS and styling utilities
├── page_content/ # Website pages
│ ├── home.py # Home page
│ ├── experience.py # Experience page
│ ├── education.py # Education page
│ ├── resume.py # Resume page
│ └── contact.py # Contact page
└── static/ # Static assets
├── css/ # CSS stylesheets
│ └── style.css # Main stylesheet
├── images/ # Image files
│ └── image.png # Profile image
└── docs/ # Documents
├── resume.md # Resume in markdown format
└── resume.pdf # Resume in PDF format
To run the application, use the following command:
streamlit run streamlit_app.py
- Multi-page navigation with sidebar
- Interactive data visualizations
- Responsive design with custom CSS
- Downloadable resume
- Contact form
- Streamlit theming via config.toml
To add a new page to the application:
- Create a new Python file in the
page_content
directory - Define a main function for the page content
- Import the function in
streamlit_app.py
- Add the page to the
MultiApp
instance
To add a new interactive component:
- Create a new Python file in the
components
directory - Define your component function
- Import and use the component in your page files