Added files
Browse files- .gitignore +1 -0
- app.py +50 -0
- requirements.txt +1 -0
.gitignore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
.venv/
|
app.py
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import streamlit as st
|
| 2 |
+
|
| 3 |
+
# Initialize session state
|
| 4 |
+
if "page" not in st.session_state:
|
| 5 |
+
st.session_state.page = "home"
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def main():
|
| 9 |
+
st.set_page_config(page_title="Fingerlings", layout="centered")
|
| 10 |
+
|
| 11 |
+
# Home Page
|
| 12 |
+
if st.session_state.page == "home":
|
| 13 |
+
st.title("🖐️ Welcome to Fingerlings!")
|
| 14 |
+
st.write("Choose an ASL learning mode:")
|
| 15 |
+
mode = st.selectbox("Learning Mode", ["Finger Spelling", "Full-Hand Gestures"])
|
| 16 |
+
|
| 17 |
+
if st.button("Start Lesson"):
|
| 18 |
+
st.session_state.mode = mode
|
| 19 |
+
st.session_state.page = "lesson"
|
| 20 |
+
st.rerun()
|
| 21 |
+
|
| 22 |
+
# Guided Lessons
|
| 23 |
+
if st.session_state.page == "lesson":
|
| 24 |
+
st.title("📖 Guided Lessons")
|
| 25 |
+
st.write(f"Learning: {st.session_state.mode}")
|
| 26 |
+
st.image("example_sign.jpg", caption="Example Sign")
|
| 27 |
+
if st.button("Go to Recognition & Feedback"):
|
| 28 |
+
st.session_state.page = "recognition"
|
| 29 |
+
st.rerun()
|
| 30 |
+
|
| 31 |
+
# Recognition & Feedback
|
| 32 |
+
if st.session_state.page == "recognition":
|
| 33 |
+
st.title("📷 ASL Recognition & Feedback")
|
| 34 |
+
st.write("Show your hand sign in front of the camera.")
|
| 35 |
+
st.camera_input("Take a Picture")
|
| 36 |
+
st.write("Feedback: ✅ Correct / ❌ Try Again")
|
| 37 |
+
if st.button("View Progress"):
|
| 38 |
+
st.session_state.page = "progress"
|
| 39 |
+
st.rerun()
|
| 40 |
+
|
| 41 |
+
# Progress Tracking
|
| 42 |
+
if st.session_state.page == "progress":
|
| 43 |
+
st.title("📊 Progress Tracking")
|
| 44 |
+
st.write("Your learning progress:")
|
| 45 |
+
st.progress(0.6) # Example progress at 60%
|
| 46 |
+
st.button("Back to Home", on_click=lambda: st.session_state.update(page="home"))
|
| 47 |
+
|
| 48 |
+
|
| 49 |
+
if __name__ == "__main__":
|
| 50 |
+
main()
|
requirements.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
streamlit
|