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>Fedora IoT effort is the latest of Fedora’s objectives. Its goal is to “create a Fedora Edition for Internet of Things, which will make Fedora the default for open source innovation on IoT hardware, middleware and backend platforms”. Many IoT devices have special requirements for operation and automation. Among these is the requirement to not break upon operating system upgrades. As part of Fedora IoT, Peter Robinson ideated the Atomic Host Upgrade Daemon, which builds on the Atomic Project and rpm-ostree, a project also labeled “Git for Operating Systems”. This monitoring daemon will re-use the work done for Atomic Updates for IoT system, allowing for automatic checking for available upgrades, applying them, rebooting, checking the system status and, in case of errors, rolling back the changes.</p>
<p>Release-bot helps upstream maintainers deliver their software to users, via automated releases at GitHub and PyPI. However, release-bot can be smarter in many ways. The workflow of the bot would be much easier if we create Github app and get rid of some bothering configuration. In the current state release-bot work with Github releases, one of the possible improvements is to extend functionalities for more git forges as pagure.io which is used by many projects in Fedora world. Also, release-bot can work with a single project at one time, let’s change it.</p>
<p>The 389 Directory Server is an enterprise class LDAP server, used in businesses globally to authenticate and identify people. A python administration framework, lib389, have been designed recently to replace existing legacy perl tools. It contains tools and libraries for testing and interacting with the Directory Server, but it is still a work in progress. The purpose of this project is to develop command line tools for configuring some of the existing Directory Server plugins in an easier way, and additionally improve the lib389 framework in general.</p>
Build a service to simplify the process of onboarding new packages to Fedora with a pull-request based workflow that integrates seamlessly with modern Git-forges like Github and Gitlab by automating key steps, creating a valid spec file, build testing, and review. Also, it reduces the workload for the reviewer by carrying out a set of common checks used in package review with rpmlint and rpminspect. Acts as a bridge between the Bugzilla-based review process and git workflows; users would be able to get feedback from both tools and more experienced packagers right within a PR-based workflow.
<p>Fedora has an android app which lets a user browse Fedora Magazine, Fedora Ask, Fedocal etc within it. This app is build using the Ionic Framework, Angular and Cordova. Essentially it is a cross-platform hybrid app.</p> <p>In the current form, most of the functions rely on an in-app browser to render content. This project aims to improve the existing Fedora App for Android for speed, utility, and responsiveness, introduce a deeper native integration and make the app more personal for the user.</p>
<p>This project aims at automating the process of statistics gathering and visualization across the entire Fedora Contributor base.</p>
<h3>The What</h3> <p>The Community Blog is becoming an important part of the Fedora Project. This site is a shared responsibility between CommOps and the Infrastructure team. Unlike most applications in the Fedora infrastructure, the Community Blog is not based off Ansible playbooks. <a href="https://www.ansible.com/" target="_blank">Ansible</a> is an open-source configuration management suite designed to make automation easier. Fedora already uses Ansible extensively across its infrastructure.</p> <p>My task would be migrating the Community Blog (and by extension, Fedora Magazine) to an Ansible-based set up and writing the documentation for any related SOPs.</p> <h3>The Why</h3> <p>In the current set up, the Community Blog and Fedora Magazine are managed separately from each other, and are managed by a single Infrastructure team member. By moving them to Ansible-based installations and merging the WordPress bases together, it adds the following benefits:</p> <ol> <li>Easier for other Infrastructure team members to fix, maintain, or apply updates</li> <li>Automates by maintaining a single, Ansible-based WordPress install vs. two independent WordPress sites</li> <li>Creates a standard operating procedure for hosting blog platforms within Fedora (can be used for other extensions in the future)</li> </ol>
<p>This project involves building a webapp to replace the current user onboarding flow for centos.ci.org</p>
<p>pkgs.fedoraproject.org is a place which hosts about 17k git repos for rpms. Presently, it uses cgit. But, we do have Pagure for hosting git repos. After addition of few more features, we will be able to host pkgs.fedoraproject.org on a pagure instance. It will make pagure even more flexible software for hosting git repos and sharing code. I am sure project maintainers of pkgs.fedoraproject.org will like the change.</p>
<p>A tool for the Managers and the contributors to proposal/edit/approve changes as per fedoras change process.</p>
<p>PyQuotient are Python bindings to libQuotient, a Qt-based library to make client applications for Matrix and. The proposal includes also a basic Matrix client application in Python using PyQuotient.</p>
Work on the fluffychat and matrix dart sdk calling functionality and make it stable for everyday use. Along with this the UI of the call screens will also be updated and calling should work in background and terminated states of the app as well.
The project kazv is a project that I really like, and I'm going to submit this poposal to address the meta issue proposed by the authors of kazv to add handling of media files to kazv. I'll go over my plans for each period and what I can contribute to matrix.org.
<p>I am applying to work on Ruma's automated checks issue <a href="https://github.com/ruma/ruma/issues/221" target="_blank">https://github.com/ruma/ruma/issues/221</a> to build a special-purpose tool to check code style rules and formatting specific to Ruma. I will use <code>rust-analyzer</code>'s <a href="https://github.com/rust-analyzer/rust-analyzer/tree/master/crates/syntax" target="_blank">syntax</a> crate to parse Rust files into a typed AST that is checked against rules. I plan to use this AST to be able to format code inside macros since this is a big part of Ruma. I have started a proof of concept tool <a href="https://github.com/DevinR528/ruma-check" target="_blank">ruma-check</a> that I will complete during GSoC.</p>
<p>The purpose of this project is to implement some of that missing features as well as functionality that will be unique to the iOS client. Various advanced features will be implemented like CallKit, 3D Touch, Onboarding tooltips, etc.</p>
<p>This project is about extending Ruma's API coverage. The final goal for this project is to have a more complete coverage of the Matrix spec, along with implementation of two recent MSCs in Ruma.</p> <p>The three main milestones for the project are the following:</p> <ol> <li>finishing <a href="https://github.com/ruma/ruma/milestone/3" target="_blank">identity-service-api</a></li> <li>implementing <a href="https://github.com/ruma/ruma/issues/479" target="_blank">MSC2403 (Add "knock" feature)</a></li> <li>implementing <a href="https://github.com/ruma/ruma/issues/478" target="_blank">MSC1946 (Secure Secret Storage and Sharing)</a></li> </ol> <p>However, other tasks are part of the project schedule. These are of a smaller scale, but aim to help me get more familiar with the code base, or just generally improve Ruma.</p>
<p>Thinking everyone got a message, but for some it didn't arrive – that is bad. This project will improve Matrix to better handle cases in which bridges couldn't deliver what they were asked for. It does so by adding new failure modes for bridges which can inform the user that something just isn't quite right.</p>
Currently, keeping privacy in mind, Matrix uses seshat to store a searchable database on the user’s device itself. As the number of conversations and messages increase, maintaining an index on the client side becomes tougher. The solution to these problems is a Searchable Symmetric Encryption (SSE) scheme that lets the client safely store an encrypted database on an untrusted server and search through it with full privacy. This project will implement, in particular, the keyword search scheme outlined in a Demertzis et al. paper titled “Fast Searchable Encryption with Tunable Locality”. I will achieve this by creating a Python library that exposes methods to create, update and search on encrypted indices stored in content repositories in a Matrix homeserver. As a part of the project I will be demonstratively integrating the library into an existing Matrix client. Additionally, I will submit results of preliminary performance evaluation.
<p>My project is to implement a complete micro blogging system on top of Matrix. With the available infrastructure, I can build a web client for Matrix designed specifically for this.</p>
<p>Give homeserver admins the ability to restrict who can register an account by requiring users to submit a token during registration. See <a href="https://calcuode.com/matrix-gsoc/" target="_blank">https://calcuode.com/matrix-gsoc/</a> for more details.</p>
This project aims to develop an application that has the ability to delegate membership of a room based on the user’s interaction with other third party services. A user can either be invited, kicked or put in a “standby” state for a room based on their past interactions. There are five main components in this project: 1) A reusable frontend component that handles the login UI for both Matrix and other third-party services. 2) A server-side component and a bot that verifies a user’s authorization to a room and decides their membership. 3) An admin panel to configure the relationship between matrix rooms and groups in third party services. 4) An external invite URL that can be used to get an invite to a room. 5) Token authenticated account registration for existing authorized users. I will be using the matrix-nio library mainly for building the bot since it has most of the functions required for interacting with the server and building a feature-rich tool.
<p>This project aims to add a right sidebar to the minimal Hydrogen matrix client that shows :</p> <ul> <li>Room Information</li> <li>Memberlist</li> <li>Member Information </li> </ul> <p>In addition, this project also aims to implement SSO login.</p> <p><a href="https://matrix-org.github.io/gsoc/#/projects?project=hydrogen&lang=en" target="_blank">Link to Matrix gsoc page</a></p>
<p>The majority of contemporary genomics and transcriptomics research is carried out using short-read technology such as the output of Illumina sequencers. However, newer long-read technologies such as PacBio and Oxford Nanopore (ONT) are becoming more prevalent due to the advantages they offer over short reads. The main advantage of long reads is that they span a much larger portion of the genome or transcriptome, making it easier to detect events such as structural variants or isoforms. As more researchers begin to take advantage of long reads, GenPipes needs to evolve and support long-read technology in its main pipelines. The objective of this project is to create a new RNA-seq pipeline (rnaseq_longreads), that supports long-read inputs. The new pipeline will be created based on the current versions of the RNA-seq pipeline, with the addition of the minimap2 aligner as well as StringTie v2 and Ballgown for generating transcript counts. In addition to implementing a long-read RNA-seq pipeline within the GenPipes framework, short-read RNA-seq pipeline will also be updated to utilize StringTie2 and both pipelines will be tested to ensure that they are working properly.</p>
<p>DevOps for GenPipes would create an automatic deployment of the GenPipes project in the cloud using Terraform. It would support multiple cloud platforms such as AWS, GCP, OpenStack Cloud etc.</p>