๐ˆ๐ง๐ฌ๐ฉ๐ข๐ซ๐š๐ญ๐ข๐จ๐ง The STEM Exploratorium was inspired by a desire to make STEM education more interactive, engaging, and accessible to learners of all ages. We wanted to create a platform that would spark curiosity and creativity in science, technology, engineering, and mathematics by offering hands-on DIY projects, virtual field trips, and challenges. The goal was to provide an educational experience that goes beyond traditional learning, allowing users to explore STEM concepts in a fun and collaborative environment.

๐–๐ก๐š๐ญ ๐ข๐ญ ๐๐จ๐ž๐ฌ The STEM Exploratorium is a web application that offers users a wide range of STEM-related activities, such as:

๐ƒ๐ˆ๐˜ ๐๐ซ๐จ๐ฃ๐ž๐œ๐ญ๐ฌ: Users can explore and generate project ideas based on a STEM topic of their choice. Virtual Field Trips: The app suggests virtual field trips that are relevant to STEM topics. Challenges: Users can participate in STEM challenges, allowing them to apply their knowledge to problem-solving activities. The app also allows users to upload images related to their projects for analysis and further exploration. How we built it

๐“๐ก๐ž ๐ฉ๐ซ๐จ๐ฃ๐ž๐œ๐ญ ๐ฐ๐š๐ฌ ๐›๐ฎ๐ข๐ฅ๐ญ ๐ฎ๐ฌ๐ข๐ง๐ : Streamlit: For creating the web interface, allowing users to interact with the app easily. OpenAI API: For generating ideas and suggestions based on user input. Anthropic's Claude AI: Used as a fallback to provide detailed responses when the initial output is insufficient. Pillow (PIL): To handle image uploads and display them in the app. Python: The backend logic, API integration, and data processing were handled in Python. The combination of these tools allowed us to create a seamless and interactive STEM learning platform.

๐‚๐ก๐š๐ฅ๐ฅ๐ž๐ง๐ ๐ž๐ฌ ๐ฐ๐ž ๐ซ๐š๐ง ๐ข๐ง๐ญ๐จ: API Response Length: One of the challenges was ensuring that the generated responses were sufficiently detailed. We initially faced issues with short responses from OpenAI, which we addressed by integrating Anthropicโ€™s Claude AI as a fallback for longer outputs. Image Uploads: Handling different file types and image sizes in a user-friendly way required additional error handling and integration with the appโ€™s interface. Environment Setup: Managing dependencies and ensuring the correct environment configuration, especially when working with different API services and managing credentials securely, was a challenge.

๐€๐œ๐œ๐จ๐ฆ๐ฉ๐ฅ๐ข๐ฌ๐ก๐ฆ๐ž๐ง๐ญ๐ฌ ๐ญ๐ก๐š๐ญ ๐ฐ๐ž'๐ซ๐ž ๐ฉ๐ซ๐จ๐ฎ๐ ๐จ๐Ÿ: Successfully integrating multiple AI models (OpenAI and Anthropic) to provide a more comprehensive user experience. Creating a user-friendly interface that allows people of all ages to engage with STEM content. Adding the ability to upload and analyze images as part of the learning process, expanding the ways users can interact with the platform. Developing a flexible framework that can support various types of educational content, from DIY projects to virtual field trips.

๐–๐ก๐š๐ญ ๐ฐ๐ž ๐ฅ๐ž๐š๐ซ๐ง๐ž๐: AI Integration: We learned how to effectively integrate and switch between different AI models to provide better results for the user. Streamlit Development: We gained experience in building dynamic web apps using Streamlit and enhanced our understanding of UI/UX design for educational platforms. STEM Engagement: Throughout the development process, we explored various ways to make STEM concepts more approachable and learned the importance of providing diverse types of learning activities.

๐–๐ก๐š๐ญ'๐ฌ ๐ง๐ž๐ฑ๐ญ ๐Ÿ๐จ๐ซ ๐’๐“๐„๐Œ ๐„๐ฑ๐ฉ๐ฅ๐จ๐ซ๐š๐ญ๐จ๐ซ๐ข๐ฎ๐ฆ: Multilingual Support: Expanding the platform to support multiple languages to reach a wider audience. More Interactive Features: Adding more interactive activities, like quizzes and experiments, to keep users engaged. Enhanced Image Analysis: Developing AI-driven analysis features for the uploaded images, such as identifying project components or suggesting improvements. Community Involvement: Allowing users to share their projects, ideas, and challenges with a broader STEM community, fostering collaboration and peer learning. Mobile App: Eventually, we aim to create a mobile version of the platform for easier access and wider usability across devices

Built With

  • anthropic
  • gpt-o1
  • streamlit
Share this project:

Updates