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.
While SOF has an incredibly robust and comprehensive back-end implementation, the ability for users and developers to access the features quickly and conveniently has not yet been created. This project seeks to create a GUI that allows real-time configuration and control of SOF. The important aspects of this are the creation of generic implementations that work on all current and future supported platforms, as well as keeping ease and simplicity of use as the number one priority.
The goal of the proposed project is to extend the existing remeshing functionality in the polygon mesh processing (PMP) package with the adaptive remeshing based on the work by Dunyach et al. (2013). The existing implementation isotropically remshes surfaces in three steps: first, edge splitting or collapsing depending on their length relative to the target edge length; second, edge flipping to improve vertex valence; third, tangential relaxation to improve the vertex distribution. The planned extension with the adaptive remeshing involves expanding the edge splitting and collapsing rules, and introducing a new formulation of the tangential relaxation; in addition, feature edges must be addressed. Apart from implementing those three necessary functionalities in CGAL, the contribution to the project would include creating tests, examples, and documentation.
When a separate executor process is used with LLVM JIT, the generated code needs to be transferred to the executor process which is done by the JITLinkMemoryManager. The current implementation uses ExecutorProcessControl API (an RPC scheme) to send the generated code which goes through pipes or network sockets. The goal of the project is to transfer it through an operating system provided shared memory regions for better performance, when both the JIT process and the executor process are sharing the same underlying physical memory. It should be done by allocating large chunks of memory and distributing it to reduce memory allocation overheads and inter process communication.
This proposal describes my planned work for Intel SGX-based Isolation for Unikraft. It will enable SGX support for Unikraft, which provides strong isolation between SGX-protected contents and others. My plan is divided into 6 tasks: 1. Deploy SGX-related environment for QEMU and KVM 2. Let Unikraft be capable of being aware of SGX at boot time by checking corresponding CPUID flags. 3. Enable a very simple unikraft application (say helloworld) in SGX, without paging support by porting corresponding libraries and implementing the SGX drivers. 4. Enable paging for SGX applications in Unikraft. 5. Try to port a complex application like sqlite3 into Unikraft with SGX support to check if there is any bug or issue to be solved. 6. Document the work finished in this project and make a plan for future work.
<p>Environments are a crucial component of <a href="https://en.wikipedia.org/wiki/Reinforcement_learning" target="_blank">reinforcement learning (RL)</a>. Grid worlds are a broad class of tile-based games that are easy to create, and are quite popular for testing and comparing various RL algorithms. They are highly versatile and provide immense flexibility in terms of creating custom environments that can test for specific properties like safe exploration, for example. <a href="https://github.com/JuliaReinforcementLearning/GridWorlds.jl" target="_blank">GridWorlds.jl</a> is a <a href="https://julialang.org/" target="_blank">Julia</a> package that provides a suite of grid world environments along with useful primitives that aid in creating custom environments.</p> <p>This project redesigns GridWorlds.jl in a way that makes it simpler, easy to understand, and more performant (in some cases) than the previous version (v0.4.0). The new version (v0.5.0) also decouples itself significantly from the API of <a href="https://github.com/JuliaReinforcementLearning/ReinforcementLearning.jl" target="_blank">ReinforcementLearning.jl</a>, which makes it easy to create entry points from other reinforcement learning frameworks. It also becomes possible to programmatically record, replay, and analyze an agent’s behavior at any point during training, which proves handy while performing reinforcement learning experiments. Moreover, one can directly play the games from GridWorlds.jl inside the Julia REPL.</p>
<p>LabelLab is an image labeling and classification tool for researchers. Currently, it allows the user to upload a batch of images and label them, in addition to managing projects and running classifications.</p> <h8>The goal for this year's GSoC is to improve the <strong>team management</strong> and <strong>collaborative experience</strong> of the project by -</h8> <ul> <li>Improving the team structure in projects</li> <li>Implementing a project-wise activity tracking system</li> <li>Creating a team-wise chatroom system</li> </ul> <h8>Other improvements include -</h8> <ul> <li>Creating a backend service selection utility</li> <li>Writing unit tests</li> <li>Fixing existing bugs</li> <li>Improving the documentation</li> </ul>
<p>Algorithmic approach to automate the process of adding hyperlinks of archived books to Wikipedia pages in an attempt to drastically simplify and alter the form of manual labor, if not completely reduce it.</p>
<p>The goal of this GSOC project is to implement new features for animint2 in order to make it possible to do more kinds of interactive data visualization and to more easily maintain the code. It also includes upgrading the testing infrastructure.</p>
<p>R has been extensively used in bioinformatics research. However, there is still no direct way to obtain Reactome’s information in R. This project aims to create the R interface for querying data from the Neo4j Graph Database and the Content Service in Reactome. Pre-built functions in the package allow users to retrieve data such as proteins, complexes, pathways, etc. related to a specific gene or entity in Reactome. Returned data would be manipulated into usable data structures for further analyses. Also, pathway diagrams and graph visualizations are provided, helping R users to explain their experimental results.</p>
<p>The objective of the problem arises from the reconstruction of gene genealogies problem - from a given genotypes of sequence data from contemporary individuals and an extended pedigree of genealogical relationships among them we have to decide and be very clear about what we should consider to be nodes information in genealogy tree according to kinds of dependencies among these nodes which should be considered to be edges of the tree. This project will focus on the development of novel algorithms for advanced reconstruction of the gene genealogy by performing inference on graphical models, specifically, implementing the greedy approach and loopy belief propagation algorithm on the succinct tree sequences. The implemented algorithms would undoubtedly be of use to integrate into the existing tskit and msprime libraries.</p>
<p>This project aims at enhancing the SUSI Smart Speaker Project. This project adds the following features:</p> <ul> <li>Rework the sound architecture </li> <li>Personal music playback via an USB Thumb drive and add skills for playing specific artists, genres or album.</li> <li>Music Playback control features such as play, pause, resume, shuffle etc.</li> <li>Control The Device remotely and add required authorization</li> <li>Implement planned actions such as setting alarms and reminders.</li> <li>Add more features to the device configuration setup such as - Device Registration, Configure more WiFi access points.</li> <li>Integrate the SUSI.AI webclient.</li> </ul>
<p>Natural Language Generation is the process of generating coherent natural language text from non-linguistic data. Though the community has been generally going for speech and text output for these models, there has been far less certainty in the inputs. A large number of inputs have been taken for NLG systems including images, numeric data, semantic representations and Semantic Web (SW) data. Presently, the generation of Natural Language from SW, more precisely RDF data, has gained substantial attention and has also been proved to support the creation of NLG benchmarks. However, most models are aimed at generating coherent sentences in English, whilst other languages have enjoyed comparatively less attention from researchers. RDF data is usually in the form of triples, . Subject denotes the resource, predicate denotes traits or aspects of the resource and expresses the relationship between subject and object.</p> <p>In this project we aim to create a multilingual Neural verbalizer, ie, generating high-quality natural-language text from sets of RDF triples in multiple languages using one stand-alone, end-to-end trainable model.</p>
<p>Mission Support System is a flight planning software which a researcher can use to analyze predicted atmospheric data, and plan a flight-path with 3D way-points. The software in the present state allows editing by a single user per flight-path. To share this work, one has to export the work as a <code>$name.ftml</code> file and send it to other researchers for further planning. This back and forth communication not only consumes a lot of human efforts and time, but also can be frustrating when the number of researchers involved in a project is bigger, say >=3.</p> <p>I propose a solution to this problem, the development of <code>Mscollab</code> which stands for "Mission Support Collaboration". <code>Mscollab</code> server would facilitate <em>real-time</em>, <em>collaborated</em> editing of flight-paths by <em>authorized</em> users. By design, it will also provide a chat facility for the users who are collaborating on the project. Its UI would be a part of <code>msui</code>, the core User Interface module of <code>mss</code>. It would additionally provide insights about temporal changes related to waypoints and the users who created them, for analytics purpose. <code>Mscollab-server</code> will be a standalone server built with Python, Flask, and python-socketio.</p>
<p>OpenStack Manila manages shared file-systems across the cloud. Being able to create and access them with ease from the container world is showing to be quite useful - that’s what csi-manila is for. One of the features that’s also in high demand when dealing with shared file-systems is taking snapshots as well as creating new shares from those snapshots from within Container Orchestrators like Kubernetes. csi-manila itself is quite a new piece of software and is missing certain features, like snapshots for an instance. This GSoC project will try to close this feature gap.</p>
<p>A huge volume of data is generated every night by large astronomical telescopes around the world. A robust and scalable software infrastructure is necessary to be able to leverage such high volume and high velocity of data. <a href="https://fink-broker.readthedocs.io/en/latest" target="_blank">Fink</a> is an Apache Spark based broker infrastructure to receive, process and redistribute such high-velocity astronomical data obtained from telescopes in real-time such as the <a href="https://www.lsst.org" target="_blank">LSST</a>. The aim of this project is to develop an Alert Redistribution System for Fink using the state-of-the-art technologies of Big Data processing and distribution (Apache Spark, Apache Avro and Apache Kafka). This Alert Redistribution system will help scientific users to access real-time data and carry out follow up research at their ends.</p>
<p>MoveIt was designed to be highly plugin-based and originally supported 3 planning libraries. Today that number has shrunk to 1. There are many good alternative motion planning libraries that could be re-added to MoveIt, including: SBPL, STOMP, ITOMP, DRAKE. This project focuses on the addition of support for motion planning libraries in MoveIt planners. MoveIt only had a single stable motion planning library as its core motion planner, i.e. OMPL. As a part of this GSoC project, motion planning support was extended by making other motion planners (CHOMP) more stable and porting STOMP also to be a part of the MoveIt motion planners family. The MoveIt part of STOMP was ported from the ros-industrial/industrial_moveit repository into moveit/motion-planners. Furthermore, benchmarking package was made to work with other motion planners in addition to OMPL and tutorials for the same were added. Planning Request Adapters were extended to include motion planners like CHOMP, STOMP to be used as an additional step with OMPL or other motion planners to produce better trajectories in different situations. Tutorials for Planning request adapters will also be added in moveit_tutorials repository.</p>
<p>The project aims to provide a compiler extension and runtime for a new "paramserv" built-in function. In the context of large-scale machine learning, it will bring more performance when training a model with a data-parallel and model-parallel parameter server. SystemML already supports the data-parallel and task-parallel operator. Hence, we can focus on designing the parameter server primitive and implementing the parameter update strategies.</p>
<p>GNU Octave is a high-level programming language for scientific and numerical computations which uses the m-script language compatible with MATLAB. Both Matlab and Octave provide many similar packages to the end-user. One of the missing functionalities in the Octave controls package is the Control System Designer tool . This tool is used in controller design to allow exploration of linear controllers through interactive tools. This tool allows the user to interactively modify a controller and apply it to the plant in a variety of closed-loop configurations/topologies. The interactivity allow the user to add & move poles and zeros in the root locus diagram, and implement common controller architectures like PD, PID, and Lead & Lag controllers, as well as assess performance through common diagrams such at Bode, Nyquist, Root Locus, and Step Response plots. The goal of this proposal is to create an Interactive Tool for Single Input Single Output (SISO) Linear Control System Design to provide a much needed missing feature in the Octave controls package for the design and analysis of SISO system controllers.</p>
<p>DIPY aims at building scifi-like 3D and 2D user interfaces. Dipy.viz provides many visualization capabilities. The goal of the project is to improve DIPY’s current User Interface widgets and create new futuristic ones so as to have a complete library from which users can build interactive applications.</p>
<p>ImageLab is an image analyzing platform. Users can load large set of images to ImageLab and then they can perform analyzes by labeling and clustering them by using different object detection modules. ImageLab also have a user management component as well as an image analyzing component.</p>
<p>The main goal of this year's GSoC was to develop <a href="https://github.com/fossasia/badgeyay" target="_blank"><strong>Badgeyay</strong></a> into a complete Service with services ranging from simple to complex functionalities which include :</p> <ul> <li>Modularizing the API and follow the best standards.</li> <li>Improving the Rest API and Resolving the known bugs.</li> <li>Improving current UI of Badgeyay and changing it along with GSoC Period by Using Ember JS and Semantic UI.</li> <li>Improving the Badge Layout and provide more features to the user. </li> <li>Implementing User Authentication and Integrating database management system into Badgeyay. </li> <li>Implementing a Badge Management System.</li> <li>Implementing Admin Panel.</li> </ul> <p>Tech Stack:</p> <p>The whole front end is shifted to Flask template to MVC frontend framework Ember JS. Everything in the frontend is divided into components and chaining of actions and models have been implemented. Semantic UI is used for styling purposes.</p> <p>The whole API is redesigned to follow JSON API specification using the marshmallow to make it compatible with data coming from Frontend. Firebase is also used to support admin and authentication functionalities from the backend flask server.</p>
<p>The VCF (Variant Call Format) is a format for text files, which is generally stored in a compressed manner to make the data retrieval of variants fast. The data which is redundant is not stored, only the variations are stored. VCF files are used to store all variant types which includes single nucleotide polymorphism (SNP) in a specific position of the genome, short insertions and deletions (INDEL) and structural variants (SV). VCF-validator includes various checks to ensure that the VCF file is consistent. It is based on a formal grammar and performs lexical, syntactic, and semantic analysis of the VCF file. It also includes a tool called VCF-debugulator which fixes errors such as the presence of duplicate variants automatically. SNPs and INDELs are fully supported in VCF-validator, but the support for SVs is still limited. The aim of this project is to improve the support for structural variants in the validator and the debugulator.</p>
<p>There are many mlpack methods that have been added since the previous benchmarking system was build and they need to be benchmarked. These include ANN, Decision Trees, Hoeffding Tree and more. There are many Machine Learning libraries like mrtp,annoy, Tensorflow, spark-Mllib, astroML in Python and libraries like CARET, randomForest, e1071,etc in R and dlib-ml in C++ and Accord.Net also which have not been benchmarked. There are some implementations in sklearn which need to be upgraded to add more options and some need a change in the value of the default parameters to support the latest version of sklearn. So if chosen to work on this project my aim would be to implement Machine Learning algorithms in some of the libraries not benchmarked as well as upgrade the current codes to support latest version of these libraries.</p>
<p>OpenWiki has been developing the filter stream framework, to allow for converting from some input streams to any/multiple output target streams. Filter stream framework creates generic interfaces for the input which could be written down to any target output stream without any/much changes to the input streams filter. This allows for easy extension of the converter to target multiple output streams target filter, while maintaining a single input stream filter definition.</p> <p>There are some pre-existing extensions that help convert from dokuwiki to XWiki. Using the a steam framework, we can create input streams from dokuwiki which can now be generic and be output to any other wiki schema including XWiki’s own.</p>