Spaces:
Build error
Build error
Download app.py from MuhammadHananKhan123/Material-selector: direct link, hf CLI and curl.
- Browser
- Download file 2 kB
-
https://huggingface.co/spaces/MuhammadHananKhan123/Material-selector/resolve/main/app.py
- Command line
-
hf download hf://spaces/MuhammadHananKhan123/Material-selector/app.py
-
curl -L -o app.py https://huggingface.co/spaces/MuhammadHananKhan123/Material-selector/resolve/main/app.py
2 kB
| import streamlit as st | |
| # Define the list of materials with properties | |
| MATERIALS = { | |
| "Aluminum": {"Strength": "High", "Weight": "Low", "Cost": "Medium", "Corrosion Resistance": "High"}, | |
| "Steel": {"Strength": "Very High", "Weight": "High", "Cost": "Low", "Corrosion Resistance": "Medium"}, | |
| "Titanium": {"Strength": "Very High", "Weight": "Medium", "Cost": "High", "Corrosion Resistance": "High"}, | |
| "Plastic": {"Strength": "Low", "Weight": "Very Low", "Cost": "Low", "Corrosion Resistance": "Medium"}, | |
| "Composite": {"Strength": "High", "Weight": "Low", "Cost": "Very High", "Corrosion Resistance": "High"}, | |
| } | |
| def recommend_material(criteria): | |
| recommendations = [] | |
| for material, properties in MATERIALS.items(): | |
| if all(properties[key] == value for key, value in criteria.items()): | |
| recommendations.append(material) | |
| return recommendations | |
| # Streamlit App | |
| st.title("Material Selection Tool") | |
| st.write("Input the design requirements, and the tool will recommend suitable materials.") | |
| # Input Case Study Details | |
| st.header("Case Study Inputs") | |
| strength = st.selectbox("Required Strength", ["Low", "Medium", "High", "Very High"]) | |
| weight = st.selectbox("Weight Importance", ["Very Low", "Low", "Medium", "High"]) | |
| cost = st.selectbox("Budget Constraint", ["Low", "Medium", "High", "Very High"]) | |
| corrosion_resistance = st.selectbox("Corrosion Resistance Need", ["Low", "Medium", "High", "Very High"]) | |
| # Material Recommendation | |
| st.header("Material Recommendation") | |
| criteria = { | |
| "Strength": strength, | |
| "Weight": weight, | |
| "Cost": cost, | |
| "Corrosion Resistance": corrosion_resistance, | |
| } | |
| recommendations = recommend_material(criteria) | |
| if recommendations: | |
| st.success(f"Recommended Materials: {', '.join(recommendations)}") | |
| else: | |
| st.error("No materials match the specified criteria. Try adjusting the inputs.") | |
| st.write("---") | |
| st.caption("This app is designed to help in selecting materials based on specified case study requirements.") | |