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.
Build a low-latency collaborative audio editing and signal analysis tool compiled to WebAssembly for execution in browser engines.
<p>Computer hardware is susceptible to errors. For example, radiation may induce error to the hardware and some bit might be flipped. It is important to improve the resiliency of software against hardware errors. One way to evaluate the resiliency of software against hardware errors is by fault injection. Using Java PathFinder, we can explore how a Java program acts for hardware errors. Specifically, we can let JPF simulate hardware errors like bit flips at some point in the program. A bit flip can happen in many positions, such as registers or main memory. We can let JPF explore the possible results of bit flips in various positions.</p>
Apache Wayang currently supports batch engines (Spark, Flink) and OLTP databases via JDBC, but lacks integration with modern data lake engines — Trino, BigQuery, Dremio, and AWS Athena — where most analytical workloads now run. This project integrates these engines into Wayang's optimizer and executor through a shared JDBC Template abstraction layer, so each new engine inherits common infrastructure (connection management, SQL assembly, channel conversions) and only overrides engine-specific behavior. The deliverables are: (1) platform, executor, and plugin implementations for Trino, BigQuery, Dremio, and Athena; (2) operator mappings that translate Wayang logical operators (filter, projection, aggregate, join) into engine-native SQL; (3) per-engine cost models calibrated via TPC-H benchmarks so the optimizer can score data lake engines against Spark/Postgres alternatives; (4) end-to-end demo pipelines and contributor documentation. The approach has already been verified with working Trino, BigQuery, and Dremio demonstrations for table scan, filter, and projection operators.
This project aims to design and implement a complete chat moderation and editing system for Jitsi Meet. Currently, Jitsi’s chat supports basic messaging but lacks important features such as message editing, deletion, moderation controls, and search, which are essential in modern communication platforms. The goal of this project is to introduce these missing capabilities using XMPP standards like XEP-0308 (message editing), XEP-0424 (message retraction), and XEP-0425 (moderation). The implementation will follow a structured approach, starting from the XMPP layer in lib-jitsi-meet and extending to the Redux and UI layers in jitsi-meet. Key features include message editing, message deletion, moderator-controlled actions, chat muting, user reporting, message search, and reply threading. Additionally, server-side enforcement using Prosody plugins will be explored to ensure reliable moderation. This project will improve user experience, provide better control in meetings, and bring Jitsi’s chat system closer to modern messaging standards while maintaining consistency with its existing architecture.
The Linux PCI subsystem includes core code as well as several PCI controller drivers. This project is to improve both the core code and the drivers to make them more maintainable. Applicants will work on these improvements and gain a much deeper knowledge of the PCI subsystem. Controller drivers The Linux PCI subsystem includes 50+ drivers that operate PCI or PCI Express controllers. The controller drivers do similar things, but they have to accommodate the details of a specific device. This project is to make these drivers more maintainable by making them more consistent in style and structure. This will be done by many small, independent changes. Error handling The Linux PCI subsystem logs errors reported by PCI devices, such as corrected parity errors, transactions aborted by access control violations, errors caused by defective devices, and errors caused by incorrect configuration by the kernel. This project is to log additional information to make error diagnosis easier and to fix several long-standing defects in this area. The defects range from fairly simple to quite difficult. ASPM ASPM is a power-saving feature of PCI Express. The Linux code that configures this feature is complicated and error-prone. This project is to make this code simpler and easier to maintain. This will be done by several incremental changes.
<p>The ODK-X Push Notifications project consists of two applications currently code-named "Skunkworks-Parrot" and "Skunkworks-Bat" .“Parrot” is the desktop application, that provides a user interface for writing messages, creating user groups to receive them, and sending those messages via the Firebase Cloud Messaging. “Bat” is the Android application that receives these messages via Firebase and displays the message to the user. In this project, I will be working on migrating databases from the firebase realtime database to the sync-endpoint sever. I will be also adding some new features to both Desktop and Mobile applications to improve user experience.</p>
The current logging system for Matrix communications at MeB relies on an unmaintained IRC-based bot (BrainzBot) that logs messages to a PostgreSQL database and displays them on chatlogs.metabrainz.org. While this system works, it uses outdated technology with known vulnerabilities, doesn't support many of Matrix's features and is no longer suitable as Metabrainz' primary communication platform. This project proposal replaces BrainzBot with a new archival service that archives messages directly from Matrix to HTML files and a PostgreSQL database. It will support Matrix features like message editing, reactions and media, and provide full text search over all messages. Both historical and new messages as they come in will be archived.
Abstract: This project aims to enhance the speech recognition engine used in Automotive Grade Linux by creating a natural language intent engine that can understand and respond to commands. The goal is to develop a voice assistant that can understand voice commands and take necessary action based on them (e.g. turn down the volume, increase AC temperature). -- Implementation Details: The current Vosk Kaldi speech-to-text functionality will be enhanced by integrating the Snips and RASA NLU engine. The NLU engine will help in extracting the context and intent of voice commands. The extracted intent will be used directly or indirectly by a gRPC-based service which will execute it by communicating with the underlying Kuksa Server APIs. -- Deliverables: 1.) Integration and development of Snips and RASA Natural Language Understanding Intent Engines with existing Vosk implementation. 2.) Ability to execute the intent extracted from the NLU engine using a gRPC-based server, GStreamer, and Kuksa. 3.) A flutter-based Linux voice assistant app to communicate with the gRPC-based service.
Kale compiles a single Jupyter notebook into a Kubeflow Pipeline by parsing cell tags, detecting data dependencies with PyFlakes, and generating KFP DSL. But real ML work rarely fits in one notebook ,teams split preprocessing, training, and evaluation across separate notebooks, and today there's no way to compose them through Kale without dropping down to the KFP SDK manually. This project extends Kale with multi-notebook composition and a visual pipeline editor. Each notebook declares typed inputs and outputs (KFP artifacts like Dataset, Model, Metrics or parameter types). A new workflow compiler processes multiple notebooks and compiles them into a single Kubeflow Pipeline, with each notebook becoming a KFP sub-pipeline that preserves its internal steps. A visual editor built as a JupyterLab DocumentWidget handles assembly ,drag notebooks onto a canvas, connect typed ports, compile and run. Deliverables: #1.Notebook interface declaration system (backend + frontend) — explicit typed inputs/outputs per notebook, integrated into existing NotebookConfig and the Kale sidebar UI #2. Workflow data model and .kale-workflow file format with DAG validation (cycle detection, type checking, reference resolution) #3. Workflow compiler that processes each notebook through the existing NotebookProcessor → Compiler pipeline, wraps output as sub-pipelines, and generates a top-level KFP pipeline wiring them together through artifacts #4. CLI support: kale --workflow path/to/workflow.json #5. Visual DAG editor in JupyterLab using React Flow — drag-and-drop from file browser, typed port connections, properties panel, compile/run actions via Kale's existing RPC layer #6. End-to-end tests on a real KFP cluster, user documentation, and example workflows
This project aims to finalize stalled pull requests and implement high-priority features in the Zulip web application, focusing on messaging, search, settings, and backend performance. In messaging and compose UI, the project aims to enable collaborative message editing, allow seamless messaging to unsubscribed channels with proper warning banners, and fix UI jitter during channel subscriptions. In search and settings, the project introduces wildcard, topic, and group-user mentions, revamps alert word notifications to integrate with topic-following, and adds Markdown support to custom profile fields. Finally, it optimizes backend performance by significantly reducing database queries for direct messages, stabilizing password reset email flows, and cleaning up legacy bot configuration logic.
Django’s contribution workflow has several manual and repetitive processes that create bottlenecks for maintainers and contributors. These processes, ranging from ensuring coding style adherence to checking test coverage, commit message formatting, and proper deprecation handling, are error-prone and take up valuable time. This project aims to automate these workflows, reducing manual effort, improving contributor experience, and maintaining Django’s high-quality standards.
<p>The aim of the project is to ease the process of testing bears in coala by significantly improving the testing API to yield favorable, easy to understand results, add support for at least 8 additional useful linter bears, integrate the MarkdownBear with useful plugins, include <code>remark-lint</code> to report error messages and get the MarkdownBear to a bug free state, and enhance documentation to include the newly written Linter bears.</p>
CurveBS currently use etcd as metadata storage but etcd has limited scalability, and the amount of metadata that can be stored is limited.So i plan to add a MySQL database as one of the storage engines and let user choose whether the metadata is stored in the kv engine or the sql engine through the configuration file. Deliverables: 1.A new SQL storage client implementation for metadata in CurveBS. 2.Configuration options to choose between kv engine and SQL engine for metadata storage. 3.Modifications to the leader election process to support the new SQL storage client. 4.Documentation on how to configure and use the new SQL storage client. 5.Tests to ensure the new SQL storage client works as expected and is compatible with existing functionality. 6.Release notes detailing the changes and improvements made to CurveBS with the addition of the new SQL storage client.
Closed-loop peripheral neuromodulation systems, essential for developing adaptive therapies like vagus nerve stimulation that can be modularly simulated using the CONTROL-CORE framework. Although CONTROL-CORE currently supports file-based and shared-memory communication, these approaches have limitations about distributed execution, scalability, and latency. To overcome these obstacles, this project suggests utilizing ZeroMQ that will contribute as a high-performance messaging library as another means of communication.
<p>Apache Gearpump is a real-time big data streaming engine. It is inspired by recent advances in the Akka framework and a desire to improve on existing streaming frameworks. Gearpump is event/message based and featured as low latency handling, high performance, exactly once semantics, dynamic topology update, Apache Storm compatibility, etc. This project is about building a SQL layer with Apache Calcite to help those who are unfamiliar with Scala/Java to use Gearpump.</p>
The project aims to develop a comprehensive library of predefined force and torque models. These models are crucial for a wide range of scenarios in computational physics and engineering simulations. Traditionally, users have had to manually generate various forces and torques, a process that is often complex and error-prone. Our library will streamline this process by including commonly used models such as the Duffing Spring, Coulomb Friction, Hill-Type Muscle, and Aerodynamic Forces. This will greatly enhance the functionality and efficiency of SymPy.
Add rust loader support for Metacall, allowing user to load rust scripts dynamically and embed rust code into other languages. This can be done by generating stubs before compiling rust code and dynamical loading. The information needed to generate stubs can be obtained by using rustc API. After that, the user can do following things: 1. Load rust scrips. 2. Inspect loaded functions. 3. Invoke loaded functions in other languages. 4. Eval rust scripts.
<p>In this project, I will focus on the desktop(electron) project of Zulip. The major aim would be to fix up most of the high priority issues, polishing up the UI, refactoring code along with improving the current test suite and implement few of the required new features. It'd also incude actively respond to user issues and quickly suggest responses or implement quick fixes. My main aim is to make Zulip desktop app at par with the other major desktop apps and make it more user-friendly.</p>
By introducing the concept of threading and based on the fact that Redis is being used to cache data, it will be easier to make more than one caching layer and each layer will define a worker for each type of notification so they will be used in parallel and there will be no delay in response or time-limit error. Adding a new page to ask them if they want to start receiving notifications, and when they click the desired channel, a pop-up message will give them instructions on how to join the notification bot so they can be added to each channel and start receiving notifications from this channel.
<p>The CDGen is an application using Eclipse APP4MC for code generation using the System Model to enhance cost-effectiveness and decreasing the chance of errors when compared to manual coding. The main outputs of this application are C and Header files which hold all the details of the model for the compilation and building process(generating executables for running on the Processor). Based on the Eclipse Modeling Framework, its capabilities not only include hardware and software modeling but in addition, tools for visualization and processing. The application will be added to the set of tools of Eclipse APP4MC.</p>
<p>ChainKeeper is a web-based application that can be used to retrieve Bitcoin blockchain. From the context of analysis, bitcoin addresses are very tricky and tedious tasks to be completed by classical programming techniques. Since the scorelab.org has initiated the Chainkeeper project as a blockchain data analytics platform, I suggest building a strong machine learning as well as deep learning-based dynamic analysis engine. Which basically can capture different bitcoin wallet types like Exchanges, Pools, Services/other, Gambling and etc,</p>
In the previous mentorship sessions we added the foundation required for query observability in Thanos's new [promql-engine](https://github.com/thanos-io/promql-engine) and hooked it up in the UI. We now have the foundation to record telemetry from our query engine as well such as time consumed per operator. This project aims to expand on this and add more metadata to the query execution, both on the promql-engine operator tree level and Thanos Query `Select()` calls for fan-out query observability. Once we have this metadata, we would like to visualize it in the Query UI. - Expected Outcome: The end goal is to have a query execution tree decorated with the metadata, collected during execution (ideally even visualized in the Thanos UI). This will help users to understand the performance implications of their PromQL queries and the bottlenecks in their Thanos Query setups. https://github.com/thanos-io/thanos/issues/6517 https://github.com/thanos-community/promql-engine/issues/106
The issue is to address the usability and accessibility limitations of GDB by developing a user interface (UI) utilizing React. This UI will leverage the GDB Python API to create a graphical dashboard that streamlines the debugging process. By providing a more intuitive and visually interactive interface that aims to enhance the debugging experience for developers, making it easier to execute commands, examine program state, and control operations within GDB. It contains features such as starting/stopping program execution, inspecting variables, registers, and memory, and a log or console view for command output and error messages.
<p>Nobody likes waiting for hours whilst blender is busy rendering. Cycle, one of the render engine of blender, is a heavy user of ray-tracing. The usage of ray-tracing require to build a BVH (Bounding Volume Hierarchy). The construction of such a tree is complicated. Currently blender use it's own BVH Builder.</p> <p>Currently, Embree can be used only if rendering on CPU, and it requires that an optional flag is set at compilation time (which is not enabled for pre-built binary).</p> <p>The goal of this proposal is to make Embree also usable on GPU.</p>