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>Reliability is essential for communication using XMPP. Although basic XMPP is not reliable in some situations. One of these situations is losing long-lived TCP connection between client and server or server and server because of network or destination failure. If this connection isn’t properly closed, sender will be unaware of the loss and connection will appear as open to server until TCP timeout is reached. All messages which will be sent by server during this time will be lost.</p> <p>The goal of this project is to implement XEP-0198 for server-to-server communication in ejabberd. This extension allows to request stanza acknowledgement and quickly resume session. Any messages that were not delivered over previous connection will be retransmitted during session resumption without duplication.</p>
Setting a calendar event is a small, but important process in our day-to-day job. It can take some of your time when you want to set up another meeting if you 1) Already have a tight schedule; 2) Your coworkers are in different time zones; and 3) Have to switch back and forth between the calendar and the messaging app. Hence, this project aims to streamline the process using a scheduling assistant, that can create meetings or set up a reminder using a prompt. A slash command can simply trigger it through a messaging app (in this case, Rocket.Chat). The solution will involve a lot of large language models (LLM) experiments for the user prompt. Therefore, this project can act as a semi-research in which the result of LLM experiments can be used to approach similar cases.
Time to First Plot (TTFP) is one of the most disliked things about Julia language because it takes from seconds to minutes to produce the first output. This is caused by the underlying Just-In-Time compilation, and the current solution is to build a user system image containing pre-loaded libraries with precompiled code. However, the workflow is primarily manual, and users are forced to recompile the system image after any package update. Currently, Julia's developers work on introducing system-image-like blobs containing compiled native code for a specific package. However, both these methods compile only package-specific precompile statements by default, and the project will introduce a new package to change this paradigm. The package would collect precompile statements during normal usage of Julia and offer to recompile the system image (or blobs) once the libraries are updated. The provided images would fit the specific user's needs and contain compiled code that would not be compiled by the default.
<p>The project goal is to establish a test infrastructure which supports unit testing, UI testing and Integration testing. Unit tests and UI tests will be written for the android project to test the new features and code changes done in the project before getting merged in the main repository. The goal is to confirm that no new code gets merged unless it passes all the tests that will be run at build time i.e. the new code works as designed and does not cause any regression issues by breaking other functionality/tests. The test infrastructure will be designed in a way that it will tell the developer what method or function or Which piece of code is causing the error or tests to fail. So It will be easy to find which portion of code is causing an error and the developer can fix that. Proper test automation consists of the generation of test coverage reports as it helps in identifying the areas of missing test coverage. So the generation of test reports using Codecov is also an important goal of this project.</p>
RocketChat is a widely used open-source communication platform that is unfortunately susceptible to spam messages in its live chat widget. To address this issue, it is essential to implement a CAPTCHA solution in the live chat widget. The objective of this project is to integrate a customizable CAPTCHA mechanism in the live chat feature of RocketChat to prevent spam messages from being sent. The proposed solution involves offering complete customization options to the admin, allowing them to select the captcha service that best fits their needs. This will be achieved by integrating three different CAPTCHA solutions: Cloudflare captcha, Google reCAPTCHA v2, and v3. The deliverables of this project include the integration of captcha widgets using Cloudflare and Google reCAPTCHA V2 and V3 in the Rocket Chat live chat feature, customizability options for the admin to select the captcha service according to their requirements, a comprehensive testing suite to ensure that the CAPTCHA is working correctly, and a user guide to help users understand how to use the new CAPTCHA feature in the live chat widget.
The Language Server Protocol (LSP) is a communication protocol between editors and analysis engines. Many major editors support this protocol, making Language Servers—development support tools that communicate with editors via LSP—highly significant in modern development environments. In this proposal, I aim to implement and enhance some new features for a new Language Server called JETLS, which is deeply integrated with the latest Julia compiler infrastructure. I will strive to deliver low-latency, precisely source-mapped feedback to users, enhancing the overall development experience by leveraging JET.jl, Revise.jl, JuliaSyntax.jl, and JuliaLowering.jl. JETLS will provide powerful editor support for programmers working on large-scale Julia codebases, helping them discover potential bugs and write more efficient code.
<p>Livechat is a package that adds the ability to embed a pop-up support chat to your website. For example when you want to interact with users visiting your website and help them with their problems, then this feature of RocketChat helps you with that. All you need to do embed a script on to your static website. Live chat agents who wield this tool use it to make customers happy and satisfied.</p> <p>This project adds real-time monitoring to livechat which will be an important feature as this will be helpful for livechat agents in the following way:-</p> <ul> <li><strong>More information about the user</strong>:- Track important information related to visitors, such as the <em>current page, location, time on site, local time</em>, etc, even though the visitor has not yet started a conversation with an agent.</li> <li><strong>Edit Info Panel for livechat with the user</strong>.</li> <li><strong>Increase Response TIme</strong>:- Agent will be able to start a conversation with a specific visitor directly from the list, improving the proactivity of the Live chat team.</li> <li><strong>New Admin Panel providing more info of users</strong></li> <li><strong>Add sentiment analysis on user messages</strong>:- When chat will be closed, sentiment analysis will be applied on user messages and shown on the admin dashboard for future use.</li> </ul>
The goal of this project is to develop a deep learning model that can accurately recognize various categories of objects in digital photos, and generate corresponding keywords that can be automatically assigned and stored in digiKam's database for each photo. This will improve the efficiency of organizing and searching for photos based on their content. In addition, the facial recognition engine will be improved to increase its accuracy and reduce its inference time. The results of this work will be merged into the master branch, allowing for more reliable and effective facial recognition capabilities in the digiKam application
<p>Systers’ Volunteer Management System currently uses function based views. It repeats certain patterns again and again, and is mostly redundant. Function based views are deprecated after Python version 1.3. Class Based generic views helps to streamline common use cases, saving development time and effort. Considering various advantages of shifting to CBV, I propose this migration for all the apps in VMS.</p> <p>The project also aims at implementing a django-haystack powered Search functionality to VMS to search volunteers by region/city, job/task etc. Haystack helps to write search code once and choose the search engine we want it to run on, and is particularly modular.</p>
This project aims to enhance QEMU's HP PA-RISC emulation by implementing LASI Network Card and NCR 710 SCSI Controller device models. LASI Network Card: Debug, test and complete the current Intel 82596 based implementation to provide full functionality NCR 710 SCSI Controller: Develop a new, accurate QEMU device model based on documentations present. Deliverables: Fully functional LASI Network Card and NCR 710 SCSI Controller models.
Add a new virtual device to QEMU to interface with a custom snapshot/restore functionality. Modified memory is kept track of by instrumenting the TCG store instructions. The virtual device will be designed for easy integration with a fuzzer, such as AFL.
<p>Watercolor is one of the most complex tools for imitation. The painting, painted with watercolors, depends to a large extent on the motion of the pigment solution, on the paper worn. This process is rather difficult to model, because, depending on the environment, the system will continue to change for some time after the artist finished painting.</p>
CommunityBridge is a platform created by the Linux Foundation to empower developers — and the individuals and organizations who support them to advance sustainability, security, and diversity in open source technology. CommunityBridge brings together maintainers, contributors, aspiring developers, and enterprises to help solve these critical challenges and drive innovation.
Implement MS-RDPEUSB protocol (client & server) in IronRDP with libusb backend and qemu-rdp integration. The goal of this project is to add USB device redirection support to IronRDP, the Rust implementation of the Remote Desktop Protocol. This enables client-attached USB devices (webcams, scanners, security keys, etc.) to be transparently accessed by applications running on the remote server. MS-RDPEUSB is a Dynamic Virtual Channel (DVC) extension that provides low-level USB packet redirection. Unlike high-level device redirection (like file system or audio), USB redirection transfers raw USB packets, allowing any USB device to work remotely without device-specific driver support on the client.
This proposal aims to develop a sampler instrument for the Sounds of Scala project. Sounds of Scala is a web audio and music library that runs on the Web Audio API via Scala.js. The sampler will be a digital music instrument with features including sample loading, playback controls, looping, and sample manipulation, along with advanced functionalities such as adjusting playback speed, pitch, and direction. Its applications range from music composition to educational purposes. This project seeks to expand the creative possibilities of the Sounds of Scala library, providing a valuable tool for music enthusiasts, developers, educators, and artists.
<p>Nowadays QEMU doesn't have any PCIE-PCI bridge except DMI-PCI i82801b11 bridge, but as DMI is a proprietary Intel bus, it can be used only on x86 targets, besides, it isn't hotpluggable. That is why the goal of this project is to create generic PCIExpress-PCI bridge, which will be able to be used by different target architectures and OSes and the bridge will be natively (in terms of PCIExpress) hotpluggable, which involves SHPC usage. As a result , after finishing PCIE-PCI bridge device QEMU PCI subsystem can be moved to QOM model.</p>
<p>3D acceleration is non-existent on Windows guests. The goal for this project is to bring a support for OpenGL. For the host part, we will use Virgl, but on the guest side, we must provide a complete user and kernel OpenGL driver.</p>
<p>This is a project to tackle as many issues as possible open in the Slick issue tracker with a priority on resolving long standing bugs and implementing features upvoted by the community.</p>
<p>The implementing serial tablet would allow to have mouse integration for vintage operating systems. This feature is absent in other virtualisation systems, as far a I know. Emulating additional character device with absolute coordinates – the one which was rather popular in 1990x– would allow us to use already existing drivers for old operating systems without USB support and so such device would bring mouse integration to them.</p>
<p>QEMU supports exposing block devices to the guest OS over the virtio-scsi protocol. Currently, this is implemented using C code running in the main QEMU process. There is also support for using an external backend over vhost-user-scsi, but the existing backend is implemented in C, and is fairly limited, only supporting iSCSI.</p> <p>The goal of this project is to implement an alternate vhost-user-scsi backend in Rust. This would provide benefits to security, reusability, and performance.</p>
This project extends QEMU FUSE export with support for FUSE-over-io_uring, a modern Linux interface that enables asynchronous, high-performance communication between FUSE daemons and the kernel. Unlike the traditional /dev/fuse path, io_uring reduces system calls, supports batching, and lowers CPU overhead. This project will integrate FUSE-over-io_uring into QEMU as an optional mode, enabling more efficient access to disk image contents through the FUSE export. The work includes implementing queue setup and negotiation with the kernel, supporting multiple inflight FUSE requests, enabling multi I/OThreads, and benchmarking performance using fio. Deliverables include: FUSE-over-io_uring support in QEMU Multi-inflight and multi-IOThread support Performance benchmarks Documentation
<p>Currently, mypy and mypyc are unable to recognize uses of the singledispatch decorator, making mypy generate false positives and mypyc generate incorrect or slow code when it is used. This project would improve both of these problems by adding special support for singledispatch in mypy and mypyc.</p>
This project will add bitmap convolution support to Doodle, enabling powerful image processing effects like blurring, sharpening, edge detection, and embossing. The implementation will design a clean functional API for convolutions that works across Doodle's backends (Java2D and SVG), despite their different underlying implementations. For Java2D, the solution will render elements to bitmap buffers before applying convolutions, while for SVG, it will leverage native filter capabilities. The project will include standard convolution kernels, composition operations, comprehensive documentation, and examples. This enhancement will significantly expand Doodle's capabilities beyond vector graphics while maintaining its functional programming model.
<p>VirGL provides an OpenGL path well supported on Linux guests. On the host, QEMU offers several console back-ends, from EGL to SDL. Adding a Vulkan path will require to change the current VirGL API, write new guest drivers, and also offer a way to display the output. This is a huge task, which can be split in several sub-projects. Expending the current VirGL API to support Vulkan is the first step.</p>