Fetching the latest programs, projects, and workspace data.

Cross-platform desktop apps with web technologies
Showing 4 of 4 projects. Click any project card for scope, mentors, and proposal studio.
Mentors: Student: Nilay Arya
Currently, Electron does not have any built-in mechanism for saving and restoring the state of BrowserWindows, but this is a very common need for apps that want to feel more native. This project aims to implement a save/restore window state API for Electron by providing a powerful configuration object called windowStatePersistence. This API will offer a declarative way to configure window persistence behavior while accommodating complex edge cases automatically. The configuration object will be optional within the BaseWindowConstructorOptions. The primary approach involves leveraging Chromium’s PrefService to store the window state as a JSON object.
Mentors: Student: Hitarth
Currently, the Devtron Extension is not in a functional state, primarily because, over the past 10 years, significant changes have occurred. Newer manifest versions have been released, and several APIs in both Chrome and Electron have evolved, leading to its current non-functional state. App developers who are new to Electron often find it challenging to understand IPC concepts and how to work with them. Building a completely new extension from scratch that tracks IPC events would be an effective approach to developing an IPC tracker that aligns with the requirements of the latest Manifest Version 3 and is fully compatible with the latest Chrome and Electron APIs. Additionally, trackers for Event Listeners and Require Graph can also be added. A working prototype for the extension can be found on my GitHub : https://github.com/hitarth-gg/electron-tracker-prototype
Mentors: Student: Piotr Płaczek
The Electron documentation currently doesn't feature API history for its functions, classes, etc. I aim to implement the missing API history in a similar fashion to the Node.js documentation: by allowing the use of a simple but powerful YAML schema in the API documentation Markdown files and displaying it nicely on the Electron documentation website.
Mentors: Student: aryanshridhar
This project aims to get rid of the Node environment from the renderer process for Electron fiddle to enforce a stronger security model. Basically, with the release of Electron v12.0.0, it is now made default to set the contextIsolation as true which prevents the usage of powerful Node APIs in the renderer process. However, these changes aren’t yet reflected in fiddle’s architecture due to which it currently uses an outdated security model. Therefore, over the summer I plan to refactor Electron fiddle by migrating all the Node APIs used in renderer process to main process and later call them via IPC events.