GSoC 25 Project Ideas #5388
Replies: 37 comments 21 replies
-
Potential GSoC 2025 Ideas1. Hardware-in-the-Loop (HIL) SimulationCircuitVerse could benefit from the ability to interact with real hardware in real-time, allowing users to validate their designs against actual devices.
This feature would bridge the gap between simulation and real-world applications, making CircuitVerse a more powerful educational and prototyping tool. 2. Quantum Circuit SimulationExpanding CircuitVerse to support quantum circuits would open doors for students and researchers interested in quantum computing fundamentals.
By integrating quantum simulation capabilities, CircuitVerse could cater to a growing community exploring the future of computation. 3. Automated Test Generation for CircuitsTesting is a critical part of digital design, and automating test case generation could improve CircuitVerse’s usability for students and professionals alike.
Automating test case generation would make CircuitVerse a more effective platform for designing and debugging complex circuits. |
Beta Was this translation helpful? Give feedback.
-
Replacing WebAssembly with Web Workers in CircuitVerseWhy Replace WebAssembly with Web Workers?1. Better Parallel ProcessingWeb Workers allow true parallel execution of JavaScript code by running in separate threads. WebAssembly, while efficient, still executes synchronously within the JavaScript main thread unless explicitly offloaded. 2. Non-blocking UI for Heavy CircuitsComplex circuit simulations can freeze the UI when processed in the main thread. Web Workers keep the UI responsive by running simulations in the background. 3. Simpler Debugging and IntegrationWeb Workers use standard JavaScript, making debugging easier compared to WebAssembly, which requires debugging through WASM tools and mappings. 4. Efficient Memory ManagementWeb Workers use structured cloning to pass data between threads, reducing memory overhead compared to WebAssembly's explicit memory management. How Web Workers Help Manage Heavy Circuits
Implementation Strategy
By adopting Web Workers instead of WebAssembly, CircuitVerse can achieve smoother performance, better scalability, and easier maintenance while handling heavy circuits. |
Beta Was this translation helpful? Give feedback.
-
1. Heatmap-Based Real-Time Visualization Tools
2. Open Hardware Component Library (Digital-Only)
3. Circuit Partitioning for Large Designs
4. Open Hardware Emulation (Digital-Only)
5. Benchmarking and Performance Metrics
|
Beta Was this translation helpful? Give feedback.
-
1. Electronic Rule Check (ERC) systemThis is an ideation to the 3rd point mentioned Sannidhi To give user a primary set of tests that can help in finding silly errors, prone to happen in complicated circuitsSome of the rules-
Future Enhancements -
2. Replacing CodeMirror with Monaco Editor for Verilog in CircuitVerseWhy Switch from CodeMirror to Monaco Editor?1. Better Support for Large CodebasesMonaco Editor, the same editor used in VS Code, handles large files more efficiently than CodeMirror, reducing lag when working with extensive Verilog code. 2. Rich Language FeaturesMonaco provides:
3. Improved PerformanceMonaco is optimized for performance, leveraging Web Workers to process code in the background, keeping the UI smooth even with complex Verilog projects. 4. Seamless Integration with Modern ToolingMonaco supports modern development features like:
5. Better Customization OptionsMonaco provides:
6. Extensive API and DocumentationMicrosoft maintains Monaco with comprehensive documentation, making customization and debugging easier compared to CodeMirror. Implementation Strategy
Switching to Monaco Editor will enhance Verilog editing in CircuitVerse, providing a more robust and user-friendly development experience. |
Beta Was this translation helpful? Give feedback.
-
GSOC 2025 Ideas 🚀1. 🎮 Gamifying CircuitVerseMaking Learning Digital Circuit Design Fun & Interactive! 🚀 through Games1. 🎮 Digital Circuit Design Games 🧩 :
2. 📊 Leaderboards & Achievements 🏅
3. 📈 User Stats & Activity Graph
2. Expanding the Subcircuit Feature (As a electronics student this is highly needed and recommended )🛠️🔗As a CircuitVerse user, building complex circuits like a 4-bit processor has been an incredibly frustrating experience. 😩 When working on such large projects, many of us often want to reuse previous circuits we've created or fork some circuits from other users. For example, I might want to reuse an ALU (Arithmetic Logic Unit) that I designed earlier, or even integrate subcircuits I forked from others. But the current process of adding these to my project is a hassle! There’s no simple way to import or integrate them efficiently, and the whole thing feels like a nightmare. 😖
3. Enhancing Simulator & Virtual LabsCurrently the simulator runs every time it gets a clock signal which keeps the simulator running all the time , even when the user does not need it.
3. Contests and Challenges
|
Beta Was this translation helpful? Give feedback.
-
GSOC 2025 Ideas 🚀3. Enhancing Simulator & Virtual LabCurrently the play() function responsible for enabling simulation from engine.js runs at every clock cycle even at times when the user don't want it to run like for example when the user is building the circuit he/she don't need the simulation to run.This consumes the resources.
3. **Contests and Challenges **
|
Beta Was this translation helpful? Give feedback.
-
Brief GSOC 2025 ideas:1.Guided Code Tour for CircuitVerseDescription:Creating graphical guided code tour using the CodeTour extension in VSCode to help new contributors understand the large CircuitVerse codebase, workflows, and features. This detailed CodeTour will make onboarding process of new developers and contributors very easy. Key Areas:
Goal:To improve the onboarding process for new contributors, making it easier for them to understand and contribute to CircuitVerse. 2.Develop an Analog Circuit Simulation for CircuitverseDescription:Extend CircuitVerse to support analog circuit simulation, enabling users to design, simulate, and analyze analog circuits with features like DC analysis, AC analysis, and component modeling.
Welcome more ideas Goal:I think this will significantly broaden the scope of the uses of CircuitVerse. |
Beta Was this translation helpful? Give feedback.
-
More ideas #5157 ( smartboard friendly circuitverse ) #5208 ( circuit cryptography challenge ) #5287 ( Personal Custom Lib of reusable components ) cc : @092vk ( I think we have similar thoughts here ) #5290 ( Resource usage panel ) #5291 ( FSM diagram ) #5289 ( better snap grid for simulator ) |
Beta Was this translation helpful? Give feedback.
-
GSOC 2025 IDEAS 🚀1 . Augmented Reality (AR) Circuit Visualization for CircuitVerse🌟 The Vision: A Living, Breathing Circuit Features: 🌟 The Bottom Line |
Beta Was this translation helpful? Give feedback.
-
1. QR Code Sharing for CircuitsObjective:Enable users to quickly share their circuits by generating a QR code, making it easy to add in project reports, presentations, and documentation. Approach:
2. Live Collaborative Circuit Editing (Circuit Jam)Objective:Enable multiple users to edit a circuit simultaneously in real time, similar to collaborative document editing platforms. This would help students and teams work together efficiently, improving circuit design workflows. Approach:Real-time collaboration can be resource-intensive, but a phased implementation can make it more feasible. Phase 1: Basic Synchronization Using WebSockets
Phase 2: Peer-to-Peer Communication for Reduced Server Load
Phase 3: Version Control and Conflict Resolution
Phase 4: Advanced Features (Gradual Scaling)
This stepwise approach ensures that live collaboration is introduced without overwhelming server resources, making it scalable and cost-efficient. 3. AI Chatbot for Circuit AssistanceObjective:Integrate an AI assistant (such as Gemini or ChatGPT) to provide real-time circuit design support, debugging suggestions, and learning resources. Approach:Since AI models require significant resources and are not freely available, full integration is challenging. As an initial workaround:
If a custom AI chatbot is developed later:
This ensures that AI-powered assistance is available from the outset while remaining cost-effective and scalable. 4. Fault Injection & Debugging ModeObjective:Enhance circuit realism by allowing users to simulate real-world failures and debugging challenges. Approach:
This feature would be particularly useful in educational environments where students learn about real-world circuit limitations and failure analysis. |
Beta Was this translation helpful? Give feedback.
-
GSOC 2025 IDEAS1. Practice Questions Section
2. Revamping the Contest Section if Possible
|
Beta Was this translation helpful? Give feedback.
-
🚀 Automating E2E Testing for CircuitVerse with Playwright 🚀🎯 1. What’s the Problem?Let’s be real—manually testing the CircuitVerse website is tedious and time-consuming. Every time a change is made, someone has to go through different pages, test UI elements, and ensure that features work correctly across multiple browsers and devices. Since CircuitVerse is an interactive platform, breakages can go unnoticed until users report issues. 😅 Here’s what’s happening:
🛠️ 2. What Will I Do?I'll build a testing framework that automatically checks CircuitVerse’s core functionality. Here’s the plan: ✅ Test the essentials:
Here’s how this benefits CircuitVerse and its community:
💪 Why Am I the Right Person for This?I have experience working with Playwright and have contributed to various organizations, including testing-related PRs. Here are a few examples of my work:
Let me know if you'd like me to open a pull request and start integrating Playwright! If you like this idea, consider it for GSoC 2025! 😊 If you’re interested in my work, I’d love to start integrating Playwright right away and continue fully implementing E2E testing during the GSoC period as well. 🚀 |
Beta Was this translation helpful? Give feedback.
-
🏗️ GSoC 2025 Proposal: Modernizing
|
Feature | JavaScript | TypeScript |
---|---|---|
Error Detection | Runtime | Compile-Time |
Auto-Completion | Limited | Context-Aware |
Code Refactoring | Manual Checks | Automated |
Onboarding Speed | Slow | Faster (Type Hints) |
Key Improvements in CircuitVerse
- Strictly Typed Interfaces for core objects (
CircuitElement
,Wire
, etc.). - Type-Safe Event Handling with strongly defined callback parameters.
- Migration to TypeScript Modules with ES6+ syntax.
- Automatic Documentation using TypeDoc.
- Refactored API with Minimal
any
Usage (<5%any
in final implementation).
📅 Timeline (300-350 hours)
Community Bonding (May 20 - June 17, 2025)
- Get familiar with CircuitVerse’s codebase and maintainers.
- Discuss migration strategy with mentors.
- Identify core modules that need urgent type definitions.
Phase 1: Foundational Setup (June 17 - July 7, 2025) [~50 hours]
- Add
tsconfig.json
with strict type-checking. - Convert essential configuration files:
webpack.config.js
→webpack.config.ts
jest.config.js
→jest.config.ts
- Set up TypeScript compilation workflow.
Phase 2: Core Module Migration (July 8 - July 28, 2025) [~120 hours]
- Migrate core CircuitVerse modules:
CircuitElement
Wire
Simulation
- Define TypeScript interfaces for event listeners and API responses.
- Replace implicit
any
types with strict interfaces. - Validate TypeScript integration with unit tests.
Phase 3: Expanding Type Coverage (July 29 - August 18, 2025) [~100 hours]
- Convert utility functions and smaller modules.
- Improve type safety for API requests and responses.
- Implement stricter TypeScript settings (
strictNullChecks
,noUncheckedIndexedAccess
). - Conduct performance tests to ensure TypeScript doesn’t introduce regressions.
Phase 4: Final Review & Documentation (August 19 - August 26, 2025) [~50 hours]
- Write TypeScript contribution guidelines for maintainers.
- Generate API documentation using TypeDoc.
- Conduct extensive testing and fix any remaining issues.
- Submit final project report and discuss future steps.
📈 Expected Outcomes
✅ Fewer Bugs: Prevent runtime errors through static type checking.
✅ Faster Development: Autocomplete reduces lookup time by ~30%.
✅ Improved Documentation: Type definitions provide self-updating API documentation.
✅ Easier Contributions: Well-defined interfaces reduce onboarding time.
🔗 Deliverables
- Fully migrated
CircuitVerse
codebase to TypeScript. - Updated documentation with TypeDoc.
- Type-safe event listeners and API interactions.
- Comprehensive test coverage for TypeScript code.
- Contribution guide for TypeScript usage in CircuitVerse.
🛠️ Technical Details
- Programming Languages: TypeScript, JavaScript
- Build Tools: Webpack, Babel
- Testing Frameworks: Jest, tsd (for type tests)
- Documentation: TypeDoc, JSDoc
🤝 Collaboration & Community Engagement
- Regular updates via CircuitVerse’s GitHub discussions.
- Weekly check-ins with mentors for feedback.
- Writing a blog post on lessons learned from TypeScript migration.
👨💻 About Me
I am a passionate developer with experience in JavaScript, TypeScript, and open-source contributions. My past work includes migrating JavaScript projects to TypeScript and optimizing build systems for large-scale applications.
📌 Why Me?
✅ Experience in TypeScript migrations.
✅ Strong understanding of circuit simulation and educational platforms.
✅ Active open-source contributor.
✅ Committed to delivering high-quality, maintainable code.
📢 Final Words
Migrating CircuitVerse
to TypeScript will significantly improve its stability, developer experience, and long-term maintainability. I am eager to contribute to CircuitVerse’s ecosystem and make CircuitVerse
more robust for future developments. Looking forward to feedback from the community and mentors! 🚀
Beta Was this translation helpful? Give feedback.
-
Purpose: Making CircuitVerse More Beginner-Friendly with AII am Riddhi Khera, passionate about making technology more accessible and intuitive, especially in the field of digital design and web development. With experience in web technologies and an interest in AI-driven solutions, I enjoy building tools that simplify complex tasks. How Can This Help CircuitVerse? Objective Key Features * Real-Time Debugging Assistance: * Interactive Learning Support: * Voice & Text Input: * Personalized Learning Suggestions: * Integration with the CircuitVerse Community: |
Beta Was this translation helpful? Give feedback.
-
Real-time Collaborative Circuit Editing for CircuitVerseOverviewCircuitVerse allows users to design and simulate circuits, but it doesn't support collaborative editing. This project aims to introduce real-time multi-user editing for circuits, similar to how Google Docs allows multiple users to edit documents simultaneously. The plan is to use WebSockets (Socket.io/Firebase) and ActionCable (Rails' WebSocket framework) for quick, low-latency updates. By integrating WebRTC, we can enhance performance by reducing server load through peer-to-peer connections. This feature will improve collaboration for both students and professionals working on circuit designs. PrerequisitesProject Expected Timeline (8 Weeks)
✅ Total Duration: 8 weeks (175 hours) Difficulty🟠 Medium Expected Mentors👨🏫 Aboobacker MK (GitHub) |
Beta Was this translation helpful? Give feedback.
-
GSOC ML based Ideas :1.Semantic SearchWhat ?A semantic search system for circuits in CircuitVerse could allow users to describe what they want their circuit to do in natural language, and the system would either:
Tech Stack & Implementation Plan
2.AI-Driven Learning & Tutoring for Personalized Learning :What ?The aim of CV is to teach digital design , their are proposals for implementing learning games and paths for users to learn digital designing of circuits. The proposal is to implement :
|
Beta Was this translation helpful? Give feedback.
-
RTL Viewer (Register Transfer Level Visualization) Problem: Users working on complex circuits (e.g., CPUs, ALUs) struggle with abstraction.Solution: Develop an RTL (Register Transfer Level) visualization mode, which:
Cc : @091vk |
Beta Was this translation helpful? Give feedback.
-
MyHDL Export for CircuitVerseIdea: Add support for exporting CircuitVerse circuits to MyHDL (Python-based HDL), allowing users to simulate digital designs in Python and later convert them to Verilog/VHDL if needed. Cc : @091vk Why?
Implementation Approach:
Example Output: from myhdl import block, always_comb, Signal
@block
def and_gate(a, b, y):
@always_comb
def logic():
y.next = a & b
return logic |
Beta Was this translation helpful? Give feedback.
-
🛠️ SPICE-Based Analog & Mixed-Signal (AMS) Simulation Support🔹 Why?Currently, CircuitVerse is digital-only. Industry tools like Cadence Virtuoso support analog, digital, and mixed-signal simulations using SPICE models. 🔹 Implementation Plan
🔹 Impact✔️ Enables analog & mixed-signal circuit design, making CircuitVerse a competitor to Cadence PSPICE & LTSpice. 📊 Interactive Graphical Data for Circuit Analysis🔹 Why?Currently, CircuitVerse does not provide advanced graphical data visualization for circuit behavior, aside from basic logic simulation outputs. ✅ Waveform Graphing (like oscilloscopes in Cadence, ModelSim, or LTSpice) 🔹 Potential FeatureTo move CircuitVerse toward industry-standard EDA tools, adding graphical data analysis would be a major step. This could include:
🔹 Impact✔️ Provides better circuit debugging by visualizing waveforms, timing, and signal behavior. 🚀 Why I Am the Perfect Person for This ContributionBringing CircuitVerse closer to industry-standard EDA tools like Cadence isn't just an idea for me—it's a vision I am passionate about. 🔹 1 Year of Hands-On Cadence ExperienceI have one year of experience working with Cadence, which means I understand the professional workflow that real engineers use in VLSI design. 🔹 Strong VLSI & Circuit Design FoundationVLSI design wasn’t just a subject in my curriculum—it was something I dove deep into. 🔹 Expert in Coding & Logic BuildingMy strong programming skills allow me to implement complex simulations and graphical analysis tools efficiently. 🔹 Problem-Solver with a VisionI don't just write code—I solve real problems. 🔹 Enthusiastic Contributor & Team PlayerI love open-source development, collaborating with teams, and contributing to projects that make a real impact. |
Beta Was this translation helpful? Give feedback.
-
We can continue the idea from previous GSOC Weekly contest sprint to prodWe focus on assimilation of weekly contest into circuitverse pour efforts into making it a regular and thriving thing. Think of making it better and more enriched... Cc : @Asrani-Aman @tachyons @vedant-jain03 @VaibhavUpreti @Arnabdaz Stem issue : #4956 Current progress : #5322 |
Beta Was this translation helpful? Give feedback.
-
Instantiate Visual Regression testing with Percy. Using config made in : #5266 |
Beta Was this translation helpful? Give feedback.
-
Image to digital circuit using AI/ML (object detection models , OCR etc) |
Beta Was this translation helpful? Give feedback.
-
Interactive Waveform Viewer & Logic Analyzer 🔹 Why? 🔹 Proposed Features: 🔹 Impact: |
Beta Was this translation helpful? Give feedback.
-
CC : @Asrani-Aman @tachyons @gr455 @Arnabdaz I think we can include this in project 1 for adding testbench support for the Output components. |
Beta Was this translation helpful? Give feedback.
-
Hi everyone! I'm a second-year Applied Electronics and Instrumentation student with a strong interest in embedded systems and microcontrollers. I would love to propose a project idea for GSoC 2025: Project Title: Embedded Systems Simulation Framework (Digital-Only) Objective: Develop a web-based simulation framework that allows users to test microcontroller code without physical hardware. It will focus on GPIO, digital communication protocols (I2C, SPI, UART), and simple peripherals like LEDs and buttons. Approach: Implement virtual microcontrollers (ATmega328, ESP32, etc.) |
Beta Was this translation helpful? Give feedback.
-
Hi everyone, The idea of integrating comprehensive IoT simulation into CircuitVerse is highly valuable. Coming from an IoT and embedded systems background, I see enormous potential in providing learners and educators the tools to visually simulate and interactively explore real-world IoT scenarios within the CircuitVerse platform. This approach could significantly enhance hands-on learning and bridge theoretical concepts with practical application. I'd love to discuss this further and hear your thoughts! |
Beta Was this translation helpful? Give feedback.
-
Whats up guys Vivek here and i am hear to be a part of the Gsoc 25 |
Beta Was this translation helpful? Give feedback.
-
These are fantastic ideas! The HIL simulation and quantum circuit support could truly expand CircuitVerse's educational reach. Also, shifting to Web Workers for parallelism sounds like a smart move for performance and scalability. Excited to see how these evolve for GSoC 2025! 🚀 |
Beta Was this translation helpful? Give feedback.
-
@Devika-A029 - Your "Embedded Systems Simulation Framework" proposal is excellent and aligns well with CircuitVerse's educational mission. The focus on digital-only simulation with virtual microcontrollers (ATmega328, ESP32) and WebAssembly execution could make embedded systems learning more accessible. This would be particularly valuable for students who don't have access to physical hardware. |
Beta Was this translation helpful? Give feedback.
-
@855princekumar - Your insights on IoT simulation integration are spot-on. The potential to bridge theoretical concepts with practical application through visual simulation could significantly enhance the learning experience. Your background in IoT and embedded systems would be valuable for this type of project. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
This thread is for brainstorming and collecting project ideas for GSoC 2025. Share your suggestions, and let's collaborate to develop innovative ideas! 🚀
Beta Was this translation helpful? Give feedback.
All reactions