|
| 1 | +--- |
| 2 | +title: "GSoC ’25 Week 08 Update by Diwangshu Kakoty" |
| 3 | +excerpt: "Reflection Learning Widget in Music Blocks" |
| 4 | +category: "DEVELOPER NEWS" |
| 5 | +date: "2025-07-30" |
| 6 | +slug: "2025-07-30-gsoc-25-diwangshu-week08" |
| 7 | +author: "@/constants/MarkdownFiles/authors/diwangshu-kakoty.md" |
| 8 | +tags: "gsoc25,sugarlabs,week08,AI" |
| 9 | +image: "assets/Images/GSOC.png" |
| 10 | +--- |
| 11 | + |
| 12 | +<!-- markdownlint-disable --> |
| 13 | + |
| 14 | +# Week 08 Progress Report by Diwangshu Kakoty |
| 15 | + |
| 16 | +**Project:** [AI Tools for Reflection](https://github.com/Commanderk3/reflection_ai) |
| 17 | +**Mentors:** [Walter Bender](https://github.com/walterbender), [Sumit Srivastava](https://github.com/sum2it) |
| 18 | +**Assisting Mentors:** [Devin Ulibarri](https://github.com/pikurasa), [Ajeet Pratap Singh](https://github.com/apsinghdev) |
| 19 | +**Reporting Period:** 2025-07-19 - 2025-07-27 |
| 20 | + |
| 21 | +--- |
| 22 | + |
| 23 | +## Goals for This Week |
| 24 | + |
| 25 | +- **Goal 1:** Improved 'reflection' widget UI. |
| 26 | +- **Goal 2:** Implement IndexedDB for storing user data. |
| 27 | +- **Goal 3:** Fix bugs caused by these changes. |
| 28 | + |
| 29 | +--- |
| 30 | + |
| 31 | +## This Week’s Achievements |
| 32 | + |
| 33 | +1. **Improved the widget's User Interface** |
| 34 | + - I have made improvements to the 'reflection' widget's user interface. The new design is more intuitive and user-friendly, enhancing the overall user experience. On opening the widget window, users can initialize a new session by clicking the 'Start New Session' button. This action sends the project code to the server, which then responds with a flowchart and algorithm. |
| 35 | + |
| 36 | +2. **Storing User Data** |
| 37 | + - I have implemented IndexedDB to store user data, including summaries and analysis reports. IndexedDB is a low-level API for client-side storage of significant amounts of structured data, including files/blobs. Now the LLM can take reference from the stored data to generate more accurate analysis. |
| 38 | + |
| 39 | +--- |
| 40 | + |
| 41 | +## Challenges & How I Overcame Them |
| 42 | + |
| 43 | +- **Challenge 01:** Working with vanilla JavaScript is really time-consuming. Although my fundamentals about this language are getting stronger, I still find it challenging to make dynamic UI components using it. |
| 44 | + |
| 45 | + **Solution :** I am using existing CSS styling to make the UI components a little bit faster. |
| 46 | + |
| 47 | +- **Challenge 02:** The 'reflection' widget block comes in the project code. So, the LLM also describes the block in the algorithm that is not needed. |
| 48 | + |
| 49 | + **Solution :** I have not figured out a solution for this yet. I am thinking of using a regex to remove the block from the code before sending it to the LLM. |
| 50 | +--- |
| 51 | + |
| 52 | +## Key Learnings |
| 53 | + |
| 54 | +- I have learned how to use IndexedDB for storing user data in a structured way. This will be beneficial for future projects that require client-side storage. |
| 55 | +--- |
| 56 | + |
| 57 | +## Next Week’s Roadmap |
| 58 | + |
| 59 | +- From recent discussions with my mentor, I will be assigning persona-like names to the AI agents. |
| 60 | +- I will be implementing the 'analysis' feature in the 'reflection' widget. Therefore, it has to read the previous summaries and analysis reports from the IndexedDB. |
| 61 | +--- |
| 62 | + |
| 63 | +## Resources & References |
| 64 | + |
| 65 | +- **Repository:** [reflection_streamlit](https://github.com/Commanderk3/reflection_streamlit) |
| 66 | +- **Streamlit App:** [Reflection App](https://reflectionapp-2yoxtvn6sknvktme2zorvq.streamlit.app/) |
| 67 | +- **IndexedDB Documentation:** [MDN Web Docs - IndexedDB](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) |
| 68 | + |
| 69 | +--- |
| 70 | + |
| 71 | +## Acknowledgments |
| 72 | + |
| 73 | +Thank you to my mentors, the Sugar Labs community, and fellow GSoC contributors for ongoing support. |
| 74 | + |
| 75 | +--- |
0 commit comments