IdeaStruct utilizes knowledge graphs as a powerful tool for collecting, representing, and summarizing various forms of input data. The idea revolves around creating a structured graph where diverse data points are modeled as nodes, and the relationships between them are represented by edges. The central node acts as a summary point, collecting and aggregating the input data from the other nodes. IdeaStruct simplifies the interpretation, analysis, and understanding of complex, interconnected information.
-
Ideation
- Brainstormed ideas leveraging team members' skills
- Decided to integrate ML with a full-stack web app
- Chose to focus on knowledge graphs based on HackMIT challenges
-
Planning & Research
- Explored resources on knowledge graphs and visualization
- Discussed tech stack options (graph libraries, databases, frameworks)
- Outlined basic project architecture
-
Development
- Set up project structure and environment
- Implemented core backend for knowledge graph management
- Developed frontend interface with graph visualization
- Integrated ML components for graph analysis
-
Challenges
- Optimized graph rendering for large datasets
- Ensured data consistency between frontend and backend
- Implemented effective search within the knowledge graph
-
Testing & Refinement
- Conducted basic unit and integration tests
- Gathered quick user feedback on UI/UX
- Made iterative improvements based on testing
-
Documentation
- Created brief API documentation and user guide
- Prepared a concise presentation for demo
Throughout the process, we held regular check-ins to discuss progress and overcome obstacles, making the most of time constraints alotted by HackMIT.
IdeaStruct is a Flask-based web application that leverages AI to generate and query a dynamic knowledge graph. It integrates OpenAI's GPT models for natural language processing, with a flexible backend supporting both Neo4j and in-memory graph databases. The application features a modular architecture with a custom integration manager for extensibility. On the frontend, it uses Cytoscape.js for interactive graph visualization. Key functionalities include AI-driven entity and relationship extraction, conditional data addition to prevent duplicates, and URL scraping for automated data ingestion.
Who?! A second-year undergraduate student studying computer science and math at Penn State.
Passionate About: Painting, programming, playing the guitar, and reading
Who?! A second-year undergraduate student studying computer science at Penn State.
Passionate About: Music, badminton, and robotics
Who?! A second-year undergraduate student studying computer science with a concentration in software at Northeastern University.
Passionate About: Coffee, reading, web development, and sleeping :)
Who?! A second-year undergraduate student studying computer science at Penn State.
Passionate About: Music, basketball, food, and Netlfix