Fetching the latest programs, projects, and workspace data.
Find open source projects actively accepting contributors. Search repositories, filter by program milestones, difficulty tags, or tech stack.
Use our Orbit AI Matcher to find out! Get instant matching scores based on your developer skills, preferred frameworks, and contribution experience.
Convert your selected open-source project into a winning GSoC, LFX, or Outreachy application using Proposal Studio.
<p>Currently the TUID service has stability and speed issues. The aim of this project is to investigate, understand the problems related to it and find a permanent solution.</p>
<p>To better help protect Firefox Account (FxA) users, we want to Integrate FIDO2 (Fast Identity Online) authentication for 2FA on Firefox Account authentication as a second authentication factor.</p>
<h4>Firefox Account Security Dashboard</h4> <p>The Firefox Account platform tracks security information about an account, but does not surface this information in an easily consumable format which makes this project very essential and useful for administrators as well as the users to make better decisions about security. The goal of this project is to provide Firefox Account administrators and users an easily digestible view into the important events that have occurred on an account, providing a way to audit for irregularities.</p>
<p>AOM (Accessibility Object Model) is a JavaScript API that allows for modifying an accessibility tree like DOM. In this project, AOM phase 1 & 2 is implemented.</p> <h3>phase 1</h3> <p>The accessibleNode property is added to DOM Element. The properties of AccessibleNode correspond to ARIA attributes one-to-one, and web browsers can modify accessibility tree via this property. Note that if both an AccessibileNode property and its corresponding ARIA attribute are present, the AccessibleNode property overrides the ARIA attribute.</p> <h3>phase 2</h3> <p>AccessibleNode interface is derived from EventTarget so that accessibility input events and assistive actions become able to be processed via AccessibleNode. This enables web developers to check whether users are using an assistive technology or not, and this may leads to discrimination against some users. So, web browsers should ask users for permission of listening for accessiblity events before propagating those events to AccessibleNodes.</p>
<p>Over the last ten years, Mozilla has been using Buildbot as its primary continuous integration tool in order to schedule builds and tests for every push that is sent to Treeherder for evaluation. As Mozilla is slowly moving towards using TaskCluster as its primary continuous integration system, an important step would be make Treeherder, the primary UI used for handling builds and tests, compatible with TaskCluster. The current Treeherder interface allows us to schedule buildbot jobs. This proposal aims to integrate Treeherder's job scheduling user interface with TaskCluster jobs. While doing this, it hopes to improve the overall integration of Treeherder with TaskCluster.</p>
<p>I will be adding and refining existing features to Firefox Devtools' CSS Grid Inspector tool. One major feature I will be working on is the grid outline tool. This tool allows for developers and designers to interact with a CSS grid layout highlighted by the CSS Grid Inspector. It gives users the ability to visualise grid cells, areas, positioning, and line names in an intuitive way. This feature will be shipped inside the new layout panel with Firefox Developer Tools.</p> <p>I initially implemented this feature as part of the Undergraduate Capstone Open-Source Program for an applied studies course during the Spring 2017 semester. Although it has come a long way, it still needs polishing.</p>
<p>Currently there are no machine translation systems offering direct translation between Romanian and Catalan available to the general public. English is commonly used as a pivot language, and the results are sometimes worse than what could be achievable with direct translation, because the two languages have a lot of common (both being Romance languages). In addition, many of Apertium's pairs (including an alpha Romanian-Catalan pair) have not been upgraded to current project standards, which makes present and future development or updated harder.</p> <p>This proposal covers the creation of a ready-for-release direct Romanian-Catalan pair from existing linguistic data and documentation, as well as the upgrade and general cleanup of several other Apertium pairs.</p>
<p>The aim of this project is to implement WeGPU API on Servo to a point where basic examples can be simulated. It would also involve covering a fair amount of conformance test suite, and profiling and benchmarking the implemented WebGPU against the existing WebGL implementation on Servo.</p>
<p>Iodide & Pyodide enables one to do data science computations entirely in the browser. These tools explore a rather unique trade-off space, allowing scientists to work flexibly and communicate effectively rather than switching mediums for different tasks. The notebook style interface allows the best in class tools of both JavaScript and Python to be used coherently.</p> <p>The matplotlib library that is currently shipped for Pyodide uses the Agg backend for actual rendering. Writing a new backend based on the APIs of HTML5 Canvas element would enable us to reduce size & memory footprint of the final build while also resulting in significant speedups. In fact, it could also enable us to take advantage of GPU acceleration along with giving the ability to use locally installed fonts along with web fonts.</p>
<p>Balrog is the software that runs the server side component of the update system used by Firefox and other Mozilla products. It helps ship updates faster and with much more flexibility than it's predecessor AUS (Application Update Service). However, Balrog's Admin API is mostly hand-written code, with some usage of wtforms for validation. It largely works, but it has some rough spots and inconsistencies. The move to an OpenAPI Specification will have multiple benefits including less code maintenance, multiple UI and backend bug fixes, better documentation and easier for clients to visualize and interact with API’s resources. Connexion, a framework designed for flask-based applications, will be used to handle HTTP requests based on OpenAPI Specification of the API to map the endpoints to the Balrog’s existing methods for serving the requests.</p>
Integrating an upgrade agent into Litmus 3.x streamlines Chaoscenter upgrades, eliminating the need for fresh installations. This feature ensures seamless transitions between versions, especially useful when facing significant changes. Expected Outcome: 1. Seamless Upgrades: Integration of the Upgrade Agent ensures smooth transitions during Chaoscenter upgrades, removing the necessity for fresh installations. 2. Simplified Process: Users can upgrade from one version to another without the hassle of reinstallation, saving time and effort.
<h3>Adaptive Quantization based on an activity mask.</h3> <p>The human eye is more tolerant towards errors in areas of high activity and is quick to find out errors in areas of lower activity. To leverage this psychovisual characteristic, quantization can be made adaptive based on the activity mask. Activity masking will be implemented in two phases:</p> <ol> <li>Biasing the RDO based on the activity at a specific region.</li> <li>Varying the quantizer offsets across segments based on activity.</li> </ol> <h3>Optimizing the quantization algorithm using Trellis Quantization:</h3> <p>Using Trellis Quantization passing the activity measurements as the weights to the trellis. The output of this Activity masked Trellis is used for quantization. This helps the quantization perform better in PSNR metrics while increasing perceptual image quality significantly. This is a feature that has proved to perform better in the case of x264 and is expected to yield similar results at rav1e too.</p>
<p>This is a project to implement new features, fix some existing issues and improve maintainability of the <a href="https://github.com/w3c/respec" target="_blank">ReSpec</a> project.</p> <p>Majority of time is expected to be spent in implementing a cross references feature. It includes creating a web service that integrates with ReSpec and expands the existing reference system to allow references across specifications. This task will require some investigation first as to how we can leverage the CSSWG’s <a href="https://api.csswg.org/shepherd/" target="_blank">Shepherd API</a> and its database. The web service may require creating a custom datastore that allows efficient search for multiple keywords. In the end, it'll provide an easy way to deep-link specifications to each other without much hassle.</p> <p>Other smaller tasks that I plan to work upon include:</p> <ul> <li>auto-normalizing references</li> <li>implementing automatic linking of pluralized words </li> </ul> <p>I would also like to work on some of the issues that might come up during the GSoC period.</p>
<p>Cascading Style Sheets is by far the most powerful tool in a web developer's toolbox. It helps you style the website exactly the way you imagined it to be. But all browser's aren't designed the same and some CSS rules might end up breaking your site on certain platforms. With the introduction of Firefox 76, came a new panel in inspector - The Compatibility Panel. This panel informs one of the dangerous CSS rules in the website's stylesheet and tells them exactly on which browsers, they may end up being a nuisance on. The Inline CSS Warnings helps developers detect these issues on the fly, putting addition information of the problem, just a click away. Building tools to help you instill confidence in your product - That is what the Firefox DevTools Community is working hard at.</p>
<p>Note: This is one of Mozilla proposed Subject</p> <p><code>Rewrite the MDN doc tester add-on as a (well-tested, modern, documented) WebExtension that runs in Firefox, Chrome, Opera, and possibly Edge. Ideally reach feature parity with the existing Add-on SDK add-on and if time allows work on new test ideas that run against the MDN documentation.</code></p>
PyZombis is a community course to teach Python to the spanish-speaking community. It is based on a Brazilian MOOC Python para Zumbis. The idea is to make an improved version of the course in Spanish, with an interactive environment for the students, that allows them to visualize and try active code on the site (made possible thanks to the Runestone library). Currently some of the lectures in the course are not interactive due to the limitations of the Skulpt interpreter. I propose to make these exercises interactive by using the recently added Brython interpreter and other libraries that can used to mock the libraries used to teach the lectures. Apart from this I also plan to add interactive web development intro lectures using web2py framework, that can greatly benefit the students who may use this course.
OpenROAD-MCP's adoption is limited by manual setup and the lack of production-grade deployment and validation workflows. This project delivers a complete Docker deployment story with GHCR publishing, cross-platform validation across Ubuntu, macOS, and WSL2, and a six-layer testing infrastructure covering integration tests against real ORFS flows, performance benchmarking, load testing, and memory profiling thus moving the project toward a reliable v1.0 release.
Knative enables serverless on Kubernetes (scale-to-zero, traffic splitting). This project finishes and polishes a Headlamp plugin so operators can **view, inspect, and manage Knative Services, Revisions, Configurations, and Routes** from Headlamp, complementing the `kn` CLI. Builds on an existing plugin. Expected Outcome: - Fully functional Knative plugin: in the Headlamp repo with a "Knative" sidebar. List KServices across namespaces with key columns (name, URL, traffic %, latest revision status) matching existing tools. - Service detail pages: showing URL, traffic split, concurrency/scaling, conditions; UI actions to adjust traffic, edit config/env/concurrency, and trigger redeploys via forms/modals with feedback and RBAC checks. - Related resources: list/link Revisions, Configurations, HTTPRoute/Knative Route; optional read-only revision/config views. - Headlamp-consistent UX: Map/metrics integration, bug fixes, basic tests, packaged metadata, ArtifactHub releases, README, and a kubernetes blog post with a short demo.
With sandboxed packaging, Linux distributions appear which do not use classic RPM or DEB packages any more, like the all-Snap Ubuntu Core. As a result CUPS will not work with classic PPD/filter-based printer drivers any more but requires all drivers being provided as Printer Applications. The student's task is to add this functionality to the Printer Application framework and create an easy way for users to install proprietary printer drivers into that chroot-equipped Printer Application. IPP Fax out is a feature which is currently missing in Linux unlike Print and Scan. The student's task here is to make this functionality easily accessible for users of common desktop Linux distributions. Like printers, faxes should automatically appear on the system and get available in print dialogs and if one prints to a fax, fax-specific options should also appear in the print dialog and the user should be able to pick phone numbers also from contacts.
IUNS-3 5G NR is a GSoC '23 medium-size project proposal that offers a general purpose introductory scenario to dive into the 5G New Radio world, unlocking the ability for users, from university students to research scientists and engineers, to know the 5G architecture in detail and enable them to use the simulator for research and development.
Libvirt has a tool called lcitool which is used for managing the CI need for libvirt and related projects. Improvements will be made to the system toward extending the container functionality to build a container locally, and execute workloads in the container. This will give libvirt developers and maintainers the ability to debug in a project specific manner among other use cases. The goal of the project is to use podman-py, a python binding for the RESTful API of podman services , to implement this feature.
<p>Kubescape evaluates compliance controls using OPA/Rego today, while Kubernetes has shipped native `ValidatingAdmissionPolicy` / `MutatingAdmissionPolicy` resources that use CEL expressions. The [`kubescape/cel-admission-library`](<a href="https://github.com/kubescape/cel-admission-library" rel="noopener noreferrer" target="_blank">https://github.com/kubescape/cel-admission-library</a>) project already ships a growing set of Kubescape controls as VAP resources, but Kubescape cannot evaluate them locally — so a resource passing `kubescape scan` may still fail the cluster's admission controller. This project adds a native CEL evaluation engine to Kubescape (running alongside Rego), using the same `ValidatingAdmissionPolicy` YAML format and `google/cel-go` library that Kubernetes uses internally. With the same rule expression evaluated in both places, Kubescape becomes directly comparable to — and competitive with — Kyverno for teams wanting a single policy language across CI, runtime scanning, and admission enforcement. A sample of existing Rego controls are then converted to CEL as proof-of-concept, validating the conversion pattern end-to-end.</p><p><br></p><p>Expected Outcome:</p><p><br></p><ul><li>New `CELLanguage` rule type dispatched from the existing `runOPAOnSingleRule()` extension point in `core/pkg/opaprocessor/processorhandler.go`.</li><li>runCELOnK8s()` implementation: loads `ValidatingAdmissionPolicy` YAML from `cel-admission-library`, evaluates with `google/cel-go` in a VAP-compatible environment (`object`, `params`, stubbed `request`), maps violations to `reporthandling.RuleResponse`.</li><li>Equivalence guarantee documented: for `object`-scoped rules, `kubescape scan` and the cluster admission controller produce identical results. Known gap (`authorizer`, `request.userInfo`) documented.</li><li>10–20 existing regolibrary (Rego) controls converted to CEL and contributed to `cel-admission-library` as `ValidatingAdmissionPolicy` resources, with a conversion guide for future contributors.</li><li>Unit and integration tests; end-to-end verification showing a converted control evaluated identically by Kubescape and a live VAP on a real cluster.</li></ul>
Looking forward to add new modules and improvise the module structure, redesign reports which having different format support, moving Sqlalchemy to Elasticsearch, modifying API routes and adding workflow feature support.